When working on WordPress projects it often happens that we find ourselves making quick choices that are not entirely conscious. Surely we are not all technical experts but we still want our site to load fast when users browse it.
To help you have more awareness when choosing partners for your projects, I chose to interview Pietro Leoni, my collaborator and expert in back-end optimization.
Let’s start right away with practical pointers to optimizing a server for WordPress.
How to choose the server for a WordPress site?
There are 3 different types of server infrastructure that you can buy to manage your websites.
First, a little clarification for the uninitiated: what are servers for? Servers are mainly for hosting our websites and making sure that browsers can process HTML pages.
However, I would like to focus on the most common web projects, namely blogs, corporate sites, and small-to-medium e-commerce. Specifically, you can choose between:
- Shared hosting, or more commonly called, shared hosting;
- VPS, Virtual Private Servers, virtual machines;
- Dedicated Servers, or dedicated servers.
Let’s see very quickly the differences between them in the area of CMS, so projects developed with the most popular platforms such as: WordPress, Joomla and Prestashop.
Shared Hosting
In addition to being the cheapest among the others, shared hosting is among the most common and widespread and consists of buying a hosting space within a server where X other websites are located within it. Which means that the hardware resources and IP address are shared among all the sites on that machine.
Advantages:
- Economical;
- Useful for a start-up project;
- Hosting management panel and basic configurations included.
Disadvantages:
- Non-dedicated hardware resources;
- Impossibility of bespoke customizations;
- No ability to scale up.
VPS: Virtual Private Server.
This is a dedicated instance within a server. Unlike shared hosting VPSs have the hardware resources, operating system and IPs dedicated, so if you buy a configuration example: 4GB RAM, 6 vCPU and 500GB SSD, the resources will be entirely dedicated to the project. It can also be noted that VPSs are usually sold with a monthly fee, while shared have an annual payment (also given the less exorbitant cost).
I personally consider VPS servers the best choice for e-commerce projects or those with high traffic.
Advantages:
- Monthly payment;
- Customized configuration;
- Dedicated resources;
- Ability to scale the project.
Disadvantages:
- Dedicated technical support;
- Hosting management panel not included, but installable separately with license;
- Domain/hosting configuration required by a systems engineer.
Dedicated Servers
Dedicated servers are entire dedicated machines within server farms. Usually these types of solutions are evaluated for very very large projects or for special needs in big company environments. Let’s say that for WordPress projects this is not a problem to be posed also because the costs are very important. The question arises, however, where to buy a good server. Regarding this there is no dedicated guide, what we can recommend is to turn to professionals who have already had experience in the field of web performance. That way they will know how to direct you to the right IT company.
What features to check for a performance server?
The criteria for choosing a performing server are many; first of all, you need to select the appropriate vendor since having a well-managed and evolved server-farm will allow you to understand to whom you are providing the keys to your project.
At the level of software features, it is essential that they be aligned with the latest standards viz:
- Nginx server (better than Apache, but in some cases you may need to install it for maximum project compatibility);
- Gzip or Brotli compression;
- PHP 7.4;
- HTTP/2 protocol;
- Firewall and Antivirus;
- MySQL 5.6 or MariaDB 10.1.
These features manage to find them even on shared hosting, while for those evaluating VPS servers also recommend evaluating in the various configurations:
- Object cache (example: Redis or Memcache);
- Cache server (example: Varnish or Opcache);
- Ad hoc configuration on the individual project is required for the cache setting.
Also consider evaluating the location of the servers to minimize ping latency; there is no point in buying hosting in america if my target users live in Italy. The closer the server is to my users, the faster the response will be.
All these technical choices are necessary to reduce ttfb server response times on WordPress and other CMSs, a key parameter for optimizing Core Web Vitals.
It tends to be the case that a paid provider will always guarantee better performance than a free one, so it is normally preferable to invest in a quality hosting that provides servers having the above-mentioned characteristics. A possible intermediate solution may be free hosting tied to the purchase of web building solutions, which allows you to amortize costs while still getting fast and efficient service.
How to choose the server IP address or integrate a CDN?
Here we touch on a bit of a sore point as there are quite conflicting ideas especially on CDN or Content Delivery Network management.
First of all let’s start with the choice of IP address, if we buy a VPS server we can decide where to buy the IP location, while for shared servers we cannot, so we should consider evaluating this aspect too if we decide to buy a shared space.
In case you have to consider buying an IP, I personally consider evaluating the location of one’s target audience. If my business is in Italy, I will purchase an Italian IP, if in Germany, a German one, and so on.
On the other hand, in case you have a multi-country target then you can consider integrating a CDN.
For some local SEO projects we have found that an in-country localized IP, as opposed to a foreign IP, has impacted organic rankings.
How do you monitor the performance parameters of your web server?
If your project plans to grow in terms of traffic and users, you need to constantly monitor the server load to avoid operational downtime.
To monitor server-side workload there are several tools that service providers make available. Very simply what you can check is the CPU and RAM load, if you notice that they often reach 100% you should consider an upgrade in time.
You might also be able to download the access log to measure the status of the server, but these files are not always accessible, especially on shared hosting.
Hardware resources also affect the usability of the CMS backend, so if you notice frequent slowdowns that you didn’t have before, contact your systems engineer immediately to do an audit and possibly an upgrade.
I also recommend activating a free uptime service that verifies that your site is always reachable: UptimeRobot.
There are also advanced monitoring systems that allow you to check the status of various services such as: PHP, MySQL, Web Server etc. , but obviously we are talking about systems that need to be integrated ad hoc on individual projects.
It is worth it in case the site needs to be constantly operational.
Also, don’t forget that CMS upgrades over time can take up more resources, so constantly monitor when you make an update.