• Hi All,
    Apologies if this is in the wrong forum, moderators please move it if so.

    I have been running my WordPress sites on a Windows server for about five years now. They are on Windows for historical reasons; 15 years ago I started building and hosting sites using DotNetNuke, which of course requires Windows. When we started doing WordPress I could not (still cannot!) afford to run two servers, so I built them on Windows. That’s all fine. Now I have made the decision to abandon DNN, and am about to complete an exercise of re-creating the remaining DNN sites as WP ones. Once that’s done I intend to migrate all my hosting onto a new *nix server; there will be a mix of WP and static sites.

    My question is: what do people recommend as the best environment for me to run on the new server?

    As background, I have been in the IT business for 45 years and when in the corporate world supported everything from mainframes down to PCs, I’ve always been technical not sales. But I haven’t worked on a serious production *nix system since the early 90s (SVR4 for those with a long memory), I’ve just dabbled with the occasional system such as a FreeSco router or TrueNAS. I’m very prepared to dig in and refresh my skills, but I also want something that will be reasonably easy to get up and running quickly but powerful enough to allow me to tune it for max performance. As well as acting as a web server I’ll also need FTP(S) and SMTP on the machine.

    Specific questions. What distro do people recommend, I am thinking of CentOS or Ubuntu but open to other suggestions? Should I go with a LAMP stack or is nginx the way to go? If anyone has trodden this path before are there any ‘gotchas’ that you can flag for me?

    Happy to hear anyone’s opinion so fire away but please be nice. ??

    Thanks in advance,
    Graham

Viewing 3 replies - 1 through 3 (of 3 total)
  • Happy to hear anyone’s opinion so fire away but please be nice. ??

    At the end of the day, it all mostly boils down to individual opinions and personal preferences… because WordPress doesn’t care what you use.

    I personally run a fleet of tiny VMs ($5-$10) for individual (but large-ish) WP sites, all running Nginx and MariaDB on Debian: Nginx and MariaDB for their out-of-the-box performance, and Debian primarily due to my familiarity.

    Out of the box, and especially as you’re going to serve static sites as well, you’re likely to get better performance (or serve more requests with a smaller-sized server) with Nginx compared with Apache. But if you’re an old-school Apache ninja who can tweak your Apache web server to the bone, then you may be able to achieve comparable performance, and it may then be better to stick with what you know and (hopefully) love.

    As for CentOS vs Ubuntu, that’s no more a matter of opinion, personal preference or a subject for debating. For years, web hosts preferred CentOS for its prized development stability. But now that stable CentOS has been killed, and the new CentOS Stream is merely an upstream distro for RHEL. Why would you run a distro in production when the developers themselves say it is “not designed for production use”?

    One thing you may consider, especially for someone coming from Windows with the need to run multiple sites on a single server: if you don’t intend to use a web-based control panel, then I’ll highly recommend you use a WordPress automation script like WordOps (my preference), Webinoly, EasyEngine, etc.

    Using WordOps for instance, the single command wo stack install will download, install and configure an optimized stack, including Nginx, MariaDB, PHP, Redis, WP-CLI, phpMyAdmin, Sendmail, ProFTPD, Fail2ban, etc. You can, of course, add options to the command to control exactly what you want to install.

    After this, a single command like:

    wo site install example.com --wpredis --le

    … will set up a new WordPress site on the domain example.com, complete with HTTPS (free SSL cert from LetsEncrypt) and full-page caching directly on the server (with Redis). Nginx vhost configuration, MySQL database and user setup… all done for you in the background.

    You can run these commands to install as many sites as you want on a single server.

    For your static sites, wo site install example.com --html --le takes care of all the Ngnix vhost configuration and SSL/HTPS setup, ready for you to upload your files via SFTP (though I personally use git).

    I hope that helps.

    Thread Starter grl570810

    (@grl570810)

    Thank you George for your extremely helpful response and in particular for alerting me to the demise of stable CentOS, and the pointer to the automation options.
    I think I’m going to aim at Ubuntu (as I have at least some familiarity with that, never used Debian), MariaDB and Nginx.
    Next step is to run that all up on a test box and look at WordOps so I have some idea what I’m doing when it comes to the big move. ??

    Regards,
    Graham

    Thread Starter grl570810

    (@grl570810)

    I thought I should write an update on my experiences having been running an in-house POC server to fine tune the migration steps before the live move, in case anyone else in a similar position finds this thread.
    Basically, I second what George said about using WordOps. It really does make the process very easy.
    There is one tweak I have made to the suggested migration path for a WordPress site: when creating the site in WordOps use the –vhostonly option which creates an empty htdocs folder you can then populate using SFTP with the files from the existing site.
    Plus one ‘gotcha’ I ran across: if you have Wordfence on the site you will need to disable and remove it completely before migrating as it doesn’t play nice with a switch of OS (and of course put it back on once up and running on *nix).
    HTH.
    Regards,
    Graham

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘Advice re migrating from Windows to *nix hosting’ is closed to new replies.