Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!


Moving WordPress site to new hosting
New on LowEndTalk? Please Register and read our Community Rules.

All new Registrations are manually reviewed and approved, so a short delay after registration may occur before your account becomes active.

Moving WordPress site to new hosting

After my last couple threads, I've realized that I'm definitely overpaying for one of my shared hosting sites and getting lower performance than I should. Thank you everyone, for helping me figure that out, btw. So I've decided of course to transfer those sites to a different hosting plan where I can get more performance for less money. I've picked up a few different ones on BF sales and Christmas sales so still deciding which to use, but figured I'd ask this in advance. How, exactly, do I go about moving the site? I know that some (many?) providers offer to do transfers for you, but I'd rather learn how to do it myself because why not, and it could come in handy in the future. Plus, I paid special prices for all of these which tends to come with less support, so I'd prefer to avoid tickets unless it's something I just can't figure out.

For other sites without Wordpress, where it's just a collection of mostly static html/php/image files, I've just downloaded a copy of everything via ftp, uploaded it to the new host, and redirected the DNS to point there instead, and it's started working almost right away. I can get the SSL cert provisioned for the new site once DNS finishes propogating, usually 4-6 hours or so (I just use free Let's Encrypt certs, not sure if that matters). Once it's functioning on the new site I've then removed the data from the old host.

But for this site, which has of course some static html/php/image files, but also a wordpress install with a few plugins, a forum (Simple Machines), and a couple other manually thrown-together databases (MySQL, though I'm happy to change to Maria or something), is the process any different? Like, if I just put the blog/forum into maintenance mode to prevent new data from writing, copy the static files over like the other sites, dump the databases and import them on the new host, will it just make a working copy of the site? Or is there something more I need to do with the databases or the wordpress config stuff to get it working? And does that affect SSL cert setup at all? If it matters, the current-soon-to-be-former host uses cPanel, and most of the ones I'm considering are either also cPanel, or DirectAdmin (which I've used for static sites, but never for databases).

Appreciate any suggestions or comments!

Comments

  • crunchbitscrunchbits Member, Patron Provider, Top Host

    It's been awhile since I've had to do this, but there was a plugin called All-in-One WP Migration that I used and it worked well for this exact task. Of course, take it with a grain of salt because this was at least a year or two ago. I have to imagine many similar (if not the exact same) plugins exist to accomplish just that.

    Going into maintenance mode and doing it manually might work as well but there were so many plugins/garbage on the old WP site and I didn't want to spend a ton of time on it.

  • edited December 2022

    Yeah the leftover garbage is a bit of a concern. I've been trying to clean up stuff as much as I can, like there were some old flash scripts and such that I was able to get rid of and replace with modern solutions, but I don't know what everything does, so I have to err on the side of caution with some things. I'm trying to see if I can manage to get some or all the manually-managed databases to be WP-based instead and use their API to fill the pages, so I'd have fewer databases overall and more flexibility, but that is new territory for me. Aside from the blog/forum, the rest of the site was manually coded roughly 12 years ago, so it's got....quirks, that I'm attemping to clean up, lol.

    I've heard of that type of plugin, good to know they work well. I don't know how that would tie into the non-WP parts of the site like the forum or the static pages (the WP install is in a subdirectory, not the main site), but I can't imagine that's a unique situation, and the plugin may be able to easily handle that. Will do some reading to see.

  • There are various ways to move a WordPress website to a new server.

    1) Control panel backup / restore.

    2) Using a wordpress plugin.

    3) Manual migration.

  • I'm dealing with WordPress migrations these days too, and I failed to just dump and restore the database. Unexpected errors always occur, I eventually chose to export them to markdown and switch to static pages..

  • WordPress manual migration (the same principle goes for most database-driven stuff, like forums etc.)

    WordPress migration using a plugin (AIO WP migration in this example)

    WordPress migration using Softaculous (in theory, remote import should work for most other Softaculous supported stuff, such as SMF forums, but in practice, you can run into some IO and firewall related problems so it often just doesn't fly - can be blocked at the old provider end).

  • YmpkerYmpker Member
    edited December 2022

    AIO WP Migration has served me well. Likely this will work smoothly for you :) ofc, there's also manual migration as pointed out and cp/Softaculous migration :D

    If you are looking for a free migration plugin, check out WPVivid (backup plugin with migration feature) which is developed by some LE memher and has quite the good reviews.

  • @bikegremlin said:

    Thanks for those links, will be reading them and a few other useful looking posts on there. Despite technically having websites for 15 years or so now, I'm still fairly inexperienced with many aspects, so plenty to learn!

    It does seem that for the WP migration, based on everyone's comments, a plugin is probably the way to go -- but with manual backups that can be restored. The SMF I will likely do an export/import process of some sort, but luckily I can leave the forum in maintenance for a while if needed, and disable any plugins it has or settings changes.

    Thanked by 1bikegremlin
  • ArkasArkas Moderator
    edited December 2022

    Do you have Cpanel or DirectAdmin in your new host? If you do, you can easily do it from the control panel, it does the job very well, for any type of site, WP, forums...etc...
    EDIT:
    You can also export from CPanel to DA

  • ezethezeth Member, Patron Provider
    edited December 2022

    @SocksAreComfortable said: I'm definitely overpaying for one of my shared hosting sites and getting lower performance than I should

    Usually you get what you pay for.

    If it's say 5 USD per month you aren't overpaying.

    If it's say 25 USD per month and it's managed WordPress hosting you aren't overpaying.

    If you move to some 12 USD/yr cpanel hosting just be aware that there is a HIGH probability needing to move your site AGAIN to a new host. Plus all the fun stuff like: Site being down for 1 week and support not answering

    Remember TIME IS MONEY. Don't waste hours on changing hosts only to have to do the same thing next year and the year after that when you could just wage away and stay with someone who will be there in 10 years.

    Want to continue anyway? Don't worry. I got some coupons for mental health counseling. You'll need it

    Thanked by 1NobodyInteresting
  • i always move my wordpress client web with AIO WP migration. Just backup, and wget from other hosting

  • I feel like you’ll run into way more issues than what you’re probably trying to save.

    I host some WP sites for a client, and I charge about $335 a month + VAT for the hassle.

    He knows my profit margin on the actual costs is crazy high, but what he’s paying for isn’t the hosting but rather for it all to work and for me to be there when it dosen’t.

    Thanked by 1Ympker
  • WebProjectWebProject Host Rep, Veteran

    We do have a special deal on our shared hosting and be able to help you to migrate your website to us as part of service.

  • I've just migrated a WP site from shared hosting to a self-hosted Wordpress running in a VPS. I wanted to run Wordpress and the database instance in Docker containers so I can easily backup, replicate, move to another server in the future etc.

    It took me a few hours to get everything working on one of my existing servers but it was worth it as I now have peace of mind about this. Site is working like a greased lightning and I can just easily, with just simple copying throw the site to any dirt cheap VPS which has decent availability and it's always going to be a lot better than what I've experienced with shared hosting. I fully recommend this option, even if it's a bit more work.

    The guide that was most helpful and had minimal amount of fuss/complexity about the process: here

  • @covent What about the complexities and overhead docker add? You can use something like Webinoly. It's easy to setup, backup, replicate or move to another server in the future. Read it's docs. It's extensive.

  • I wrote this to help set-up VPS for PHP based sites mainly with main focus on Laravel and WordPress

    https://github.com/noamanahmed/LEMP

    It takes 20 minutes to setup and you can have a very secure VPS with very easy scripts to setup new WP sites. There is no bloatware of GUI

    I am currently thinking of making a script to import from cPanel or other providers in it. Hopefully when I get time.

  • @noaman said:
    I wrote this to help set-up VPS for PHP based sites mainly with main focus on Laravel and WordPress

    https://github.com/noamanahmed/LEMP

    It takes 20 minutes to setup and you can have a very secure VPS with very easy scripts to setup new WP sites. There is no bloatware of GUI

    I am currently thinking of making a script to import from cPanel or other providers in it. Hopefully when I get time.

    Yo! That would be very helpful!

  • I just download all my files, then the database. And re-upload those to the new host server.

  • coventcovent Member
    edited December 2022

    @Merakith said:
    @covent What about the complexities and overhead docker add? You can use something like Webinoly. It's easy to setup, backup, replicate or move to another server in the future. Read it's docs. It's extensive.

    Thanks for the tip, Webinoly looks very nice! :)

    For overhead and complexity in dockerized environment.. I haven't really thought about that. My stacks are fairly simple (service + database) and I run the reverse proxy (nginx) on host (not in docker) which handles SSL termination and directing the requests to right docker container. Somehow I feel it is much clearer to manage it this way than what I used to do with legacy LAMP stacks, definitely something like Webinoly would have helped with that

    Thanked by 1Merakith
  • I often use this plugin. Free version does easy migration. You do need paid version if you're migrating multi-site. https://wordpress.org/plugins/wpvivid-backuprestore/

  • @nductiv said:
    I often use this plugin. Free version does easy migration. You do need paid version if you're migrating multi-site. https://wordpress.org/plugins/wpvivid-backuprestore/

    How well does it work for larger sites?

  • @ItsAsylum said:

    @nductiv said:
    I often use this plugin. Free version does easy migration. You do need paid version if you're migrating multi-site. https://wordpress.org/plugins/wpvivid-backuprestore/

    How well does it work for larger sites?

    Haven't had any problems with large sites. Probably the largest I've done is 5gb.

  • @nductiv said:

    @ItsAsylum said:

    @nductiv said:
    I often use this plugin. Free version does easy migration. You do need paid version if you're migrating multi-site. https://wordpress.org/plugins/wpvivid-backuprestore/

    How well does it work for larger sites?

    Haven't had any problems with large sites. Probably the largest I've done is 5gb.

    Cool ill give it a try. Mines about 5 to 7gb on site files. And I think my database is around 1gb. Maybe a little less.

  • Thanks for your reply @covent

    So you run nginx webserver, php-fpm on the host and spin up a mysql server in one image and other images which consist of wp connects to the single mysql image container. Is that right?

    How do you manage modifications like addition of more sites, url change, etc? Can you share the compose file if possible? I am interested if I can get Docker swarm working for my needs and if this will simplify my setup. I am running wp sites over a cluster which I manage using Ansible.

  • @Merakith said:
    Thanks for your reply @covent

    So you run nginx webserver, php-fpm on the host and spin up a mysql server in one image and other images which consist of wp connects to the single mysql image container. Is that right?

    How do you manage modifications like addition of more sites, url change, etc? Can you share the compose file if possible? I am interested if I can get Docker swarm working for my needs and if this will simplify my setup. I am running wp sites over a cluster which I manage using Ansible.

    If you're already working on a cluster, my simplified setup probably won't work for you, as I don't run my sites in a cluster. I only have a "master" and backup server which I switch over as needed.

    The compose file template that is pretty similar what I used for migration is in the link I put in my first message. The difference is that I don't use the external network block, I just bind container port 80 to localhost:8080 or similar and then use that as entry point for nginx. And using that approach assumes that nginx is installed on host system. You would then add necessary nginx virtual server configs for each site to for example /etc/nginx/conf.d/

    Adding sites is pretty simple, just deploy a new container for it and add a virtual server to nginx which points requests to the container instance.

    Changing the url.. I don't how common task that actually is, I really don't remember doing that in a while, but if you're just thinking about the changing the domain name or your base folder, the procedure would be to change the name of the virtual server in nginx config.

    Changing url in Wordpress/database would be similar to how it is done in non-container environment, only difference is you're running commands inside the container or modifying files in container volume (which is just a directory on your host system). If you'd want to do that in a cluster, using something like Ansible as you're already doing, sounds feasible, you would just apply the same logic to running the commands with "docker exec -i ...." so your executing "inside" the container.

    Don't know if this was at all what you were wondering about but that's all I have :D

    Thanked by 1Merakith
Sign In or Register to comment.