Migrating Websites Between Different Environments and Configurations!
Migrating websites are painful and we get lot of issues! Here is how to migrate between different environments. It may sound confusing unless you have done a migration at-least once!
cPanel to cPanel Migrations:
Origin Server: Lower Version (or) Same Version. Target Server: Same Version (or) Higher Version.
May sound simple if your origin server and destination server are of the combinations presented above. Usually, the target Hosting Provider does this with a click of a button by exporting and importing the entire cPanel.
cPanel to Managed WP (or) Managed WP to cPanel:
Hell Yeah! This is one of the complex work if you have to deal with a Staging server in-between. It really requires experience to perform migrations between completely different environment like a Managed WP and a Bare cPanel. You may come across the following issues:
PHP Version Issues:
This is more common issue that causes errors only if the difference in versions are way to high. Especially, if you try to downgrade the PHP version for a migration, you will definitely have a tough time.
These PHP Version issues can be fixed by changing the PHP Version for your web server. This can be easily done on a cPanel. But, if you are stuck with a Managed WP Hosting, do not hesitate to call the hosting support. Because, you cannot control these things directly.
Database Collation issues while migrating WordPress Database!
Wow! Thats a lengthy sub-heading. Yet, this issue takes ages to solve if your target Database does not import the database with the same collation type. This is very painful because you require tools to convert the database and upload to the target server using desktop application.
The key is to white-list your IP Address on the Database server and access the database using your desktop application. It will be way too tough if your ISP is giving you a Dynamic IP as you have to white-list every time when your IP Changes. Also, if the connection is lost between your desktop app and remote DB Server, the desktop application would sync the entire database from the beginning and if your website has lot of storage on your desktop, you better get in touch with us! 😛
.htaccess file permission issues
If you use plugins available on WordPress to migrate a website, choose the plugin based on your Target Server, Origin WordPress compatibility and types of access you have towards your target server.
Because, some plugins would lock the .htaccess file for safety reasons and prevents other plugins from write permission towards .htaccess file. If you are moving to a Managed WP hosting, you could end in redirect loops. Sometimes, this will leads to perma links issues where you will be able to access the website only with Page ID and not URL’s.
Are you trying to upgrade to HTTPS while migrating to a different host?
You are looking forward for trouble unless you know what you are doing with the migrations. On the other hand, if you are upgrading to HTTPS, its good as we will be able to rewrite on Database level rather than using 301 with the help of plugins.
Having HTTPS for your website helps in SEO. But, having errors (or) in-secure elements being loaded are hazardous for your ranks. It could display warning messages on your browser if not done properly.