Question

How do I move wordpress site to digital ocean with out Downtime?

Posted May 11, 2020 111 views
WordPress

I am planning on migrating my WordPress hosting from GoDaddy to a WordPress droplet using the same domain name. I want to minimize downtime. How best do I do this?

These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

×
2 answers

Hi there @osoisi,

The process that you need to follow is:

  • You would need to first set up a Wordpress Droplet, to do that you can either follow the steps on how to do that manually here:

https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-lamp-on-ubuntu-18-04

Or you could use the 1-Click installation here:

https://marketplace.digitalocean.com/apps/wordpress

  • After that, you need to backup your Wordpress files and Database from your GoDaddy account

  • Then using SFTP or SSH upload your Wordpress files and database to your DigitalOcean Droplet.

If you are using the 1-Click installation, you can delete the files from the /var/www/html folder and upload your files from GoDaddy to that folder.

  • Then you would have to create a new database and a username and import your Wordpress database that you’ve backed up from your GoDaddy account

  • After that make sure to update your wp-config file with the new database details

  • Then in order to avoid any downtime, you can test your site on your Droplet. To do that you can edit the hosts file on your PC to bypass the DNS lookup and access the site on our servers through your main domain.

This only affects your computer and your visitors will see the site as normal.

The location of the file is as follows:

  • Windows PC
C:/windows/system32/drivers/etc/hosts
  • Mac OSX:
/etc/hosts
  • Linux:
/etc/hosts

Just open it up in your favorite text editor (e.g. Notepad) and add that line on the bottom:

  • server_ip_address yourdomain.com www.yourdomain.com

Once you have made the change, save the file and browse to your website as normal. Make sure to clear the cache of your browser.

You will see it served from your DigitalOcean Droplet and will be able to test the full functionality of your CMS before actually pointing your domain name to your DigitalOcean Droplet.

To view the site on your existing host, just remove the line from your hosts file.

  • Finally once you are sure that your website is working as it should, then you will need to point your domain name to your Droplet, you can do that by either changing your A record to point to your Droplet’s IP address or changing your nameservers to the DigitalOCean nameservers:

https://www.digitalocean.com/community/tutorials/how-to-point-to-digitalocean-nameservers-from-common-domain-registrars

So to summarize:

  • Create a WordPress Droplet
  • Backup your website
  • Upload your website to your Droplet
  • Import your database and update your wp-config file
  • Test your website with your hosts file
  • Once you are sure that the website is working point your domain to your Droplet

Let me know if you have any questions.
Hope that this helps!
Regards,
Bobby

by Josh Barnett
by Kathleen Juell
DNS is the naming system that is used to bind a domain name to a web server. In this guide, we will change the nameservers for a domain that we have registered and point it to a DigitalOcean Droplet.

Hello @osoisi,

This is quite easy to do, You can move your website on Digitalocean with any 1ms downtime. The first thing you have to do, Create a Droplet and Install either LEMP or LAMP whatever you like.

You can go here and collect the information about LAMP: https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-lamp-on-ubuntu-18-04

Follow all the steps according to guide, but one thing you have to change is Virtual host configuration if you want to run a WordPress website.

You can make the configuration like this:

Replace example.com with your own domain.

<VirtualHost *:80>
  # Admin email, Server Name (domain name), and any aliases
  ServerAdmin webmaster@example.com
  ServerName  example.com
  ServerAlias www.example.com

  # Index file and Document Root (where the public files are located)
  DirectoryIndex index.html index.php
  DocumentRoot /var/www/html/example.com/public_html
  <Directory /var/www/html/example.com/public_html>
      Options Indexes FollowSymLinks
      AllowOverride All
      Require all granted
  </Directory>

  # Log file locations
  LogLevel warn
  ErrorLog  /var/www/html/example.com/log/error.log
  CustomLog /var/www/html/example.com/log/access.log combined
</VirtualHost>

Next, take a back up of your Database and Publichtml directory. Upload publichtml directory here: /var/www/html/example.com/

To manage the Database you can use Phpmyadmin: https://www.digitalocean.com/community/tutorials/how-to-install-and-secure-phpmyadmin-on-ubuntu-18-04

Upload your Database and connect with your website, Now you’re ready to live your website on digital ocean server.

Point your Domain to Droplet public IP.

If you’ll set up digital ocean DNS, then it may take some time to live.

by Mark Drake
phpMyAdmin is an application that allows users to interact with MySQL databases through a web interface. This tutorial covers the process of installing and securing phpMyAdmin on an Ubuntu 18.04 server.
Submit an Answer