Drupal upgrade issues

Posted under » Drupal on 23 Jan 2023

The thing I don't like about PHP and Drupal is that things get obselete pretty fast.

From version 9 to 10

You may install using composer but you must have internet connection for this to work.

Depending on your case, you Mysql dump to another server or copy to another db.

After the db, you will need to move the `files' folder over to the new server. It contain a folder that may look like `config_8l5mFtg5qXBHB7vZEohRUDT0_7I-G74VW3mXi6-vswSYvw1hHLxA' and other folders like css and js etc.

Then as usual, set up a drupal site with the new db settings.

It is important that your modules and themes must be ready for the next version.

I was using an old incompatible theme (seven) so I changed it to claro but you still need to have that unused theme in the new version. According to the status report, there are 2 modules CKeditor4 and RDF which are obsoleted. However, I was unable to turn the CKeditor4 off. You still need to have that unused module there. To prevent error, you turn on CKeditor5 too.

Do to the /update.php option. Before it will update, it will check if you meet the requirements or if you have any depreciated themes and modules . If you are able to update, then, you are good to go.

From version 8 to 9

I have to migrate all my ver 8 websites to version 9 as it will reached its EOL end of 2021. It was easy.

You must ensure that all your ver. 8 modules are Drupal 9 ready. If not you have to disable it. Copy or rsync my sites folder to drupal 9. Adjusted my Apache config and restarted my Apache. It worked and now I am in Drupal 9. It seems drupal ver 8 and 9's sites folder format are quite similar.

As usual you have to update the tables to version 9. When I try to do that, I encountered this error.

"Your /settings.php file must define the $settings['config_sync_directory'] setting as a string containing the directory in which configuration files can be found

To fix this, you go to your settings file and change from the old $config_directories['sync'] to $settings['config_sync_directory'] . You will then be able to update your tables.

If somehow you get a website error, clear all your cache from the DB.

web security linux ubuntu python django git Raspberry apache mysql php drupal cake javascript css AWS data