There could be many reasons why you would want to find a new home for your joomla website. Changing web hosting provider is not a very hard task; however it could give you headaches if you never did it before. In this article I will show you the best and fastest way to transfer your Joomla website to a new web hosting provider.
But first, find out which are the reasons why people switch hosting companies. Joomla is a great CMS, and very flexible. At the same time is resource intensive and it does not work well on every web server. If the web server is not optimized for Joomla, you can expect performance pitfalls as your website evolves. By using a heavy template and too many extensions on your Joomla system, it can slow down your website. In most of the cases, Joomla website owners switch to a new host, because they are not happy with the performance and hope that another company that offer Joomla hosting will solve this problem.
Another reason why people will choose to switch hosting is the lack of upgrade possibility. As the development team of Joomla core constantly works on the system, they improve the software by using latest technologies which require a higher version of PHP and MySQL. Hosting companies are not automatically updating PHP versions and if you want to upgrade your Joomla site to latest version, it will not work with the current server setup. You can ask your hosting provider to update their server, but in most of the cases this will be refused as other users who share the same server with you, do not use Joomla.
In the following I will show you how to transfer your Joomla site to a new server and avoid any downtime.
1. Choose a Joomla optimized web hosting plan
The very first thing you should do, if you want to leave your current hosting provider, is to find a new one. This could be challenging, because there are many companies offering similar services and also supporting Joomla. Bust as you already know from your current host, it is not enough to have support for Joomla. If you are looking for a reliable Joomla host, go with the company that offers optimized servers for the Joomla CMS. A web server built especially for Joomla websites is a bit different in matters of configuration from the other, general use servers. InMotion hosting is one of the best hosting providers that offers Joomla optimized plans at a very affordable rate.
InMotion Joomla Hosting
starting from $4.19 / month includes 2 joomla websites, unlimited GB space and bandwidth, suPHP, mod_security Apache module, online tutorials for Joomla 2.5 and 3.0+ and a lot more
2. Backup your Joomla website
I assume, your current host use cPanel, but if not, the process is very similar with other hosting control panels as well. In order to back up your website and save it to your computer, you will have to login to the control panel. Find the File Manager icon and access the folder where your website’s files are located.
Compress the files into a .zip file and when done, save it to your computer.
Now in the control panel, go to the phpMyAdmin icon, and find the database that is used by your site. If you are not sure about the database, you can easily find out from the website’s configuration.php file, just search for this line: public $db = ‘yourdatabse’; Select the database, export all tables and save it to your computer, preferable to the same folder where your website is saved, just for easier management.
3. Transfer the files and database
Once your website is backed up, you can start working on the new host. Probably you have created your new hosting account using your current domain; in this case you will have to upload the files to the root folder or your account. If you have used another domain or registered a new one during the signup, you will need to add-on the domain that is used for your Joomla site. By adding the domain name to the new hosting account, will create a folder (public_html/yourdomain.com), and this will be the folder where you have to upload the files as well. Please do not change the name servers of your domain yet.
Now, if you figured which is the right folder to upload to, using an FTP client or the File Manager tool from cPanel, upload the .zip file that contains the files of the website. Once the upload is finished, extract the files from the archive, using the File Manager and make sure that these are extracted to the main folder. If the files are extracted to a subfolder (publiy_html/yoursite.com/backupfiles/) just move all the files to the main folder: public_html/yoursite.com.
If you are done with the files, go back to the main page of the control panel and with the MySQL Database Wizard create a new database. While creating the database and user, generate a strong password and save this to a text document, you will need it later. When adding the MySQL user to the database, it is important to enable All Privileges option.
So you have your database and user ready to be used. Now go to the phpMyAdmin icon, select the recently created database and import the .sql file that you have earlier saved to your computer. Depending on the file size, the importing of the database can take couple of seconds.
The last think is to connect the files with the database. Now go edit the configuration.php file and change the database, user and password.
Now if you did everything right, you should be able to see the clone of your website on the demo url, that was provided by your hosting provider on the signup. If you chose to get an account from InMotion, the url of the account should look something similar to this: http://server123.inmotionhosting.com/~youraccountname/
4. Change the name servers of your domain
Now it is time to change the name servers of your domain name. If your domain is registered to a third party company such as Name.com or NameCheap, and not with your current hosting provider, you just login to your account and update the name servers. If need more info on how to change name servers for a domain, check out the linked article in this paragraph.
If your domain is registered with the hosting company you want to move away from, I suggest start transferring your domain to an independent registrar. Do not keep your domain and hosting at the same company. The transfer of a domain can take few days, so consider this aspect as well.
The information update of the name servers should be instant, however to see the changes on your ISP can take up to 24 hours. So be patient.
5. Test your Joomla website
I assume, that you have already tested the clone of your website using the demo url provided by your new host. Now, as the name servers have been updated, your domain is connected to the new hosting account. Due to different server configuration, it rarely happens that, your Joomla site can have some errors after transferring it to a new host.
To be sure that your website still works perfectly, randomly access different pages and use different functionality of your website. If you are running a forum or have blog section, you can create a new post, mentioning that you moved to a new host and ask the community to report any problem they find.
Notes and suggestions
Hope that this tutorial helped you to move your joomla website to a new server without any downtime. If you have any questions regarding Joomla website transfer you can leave a comment below, or if you decide to migrate to InMotion hosting, their support team will assist you during this process. If you are interested on how to secure your joomla site, I highly recommend reading our other tutorial.
Best Joomla Hosting by InMotion
InMotion Hosting has been providing web hosting since 2001 and they now offer Joomla optimized web servers with lots of great features starting at $4.19 / month