Web Servers
When we visit a website, our request typically goes to a web server.
The usual flow is:
user ➞ browser ➞ internet ➞ web server ➞ application server (WordPress) ➞ php ➞ mysql
Depending on the type of web hosting you are using, the web server will be either transparent to you (e.g., WordPress VIP/Heroku) or you will find yourself dealing with it completely or partially (e.g., EasyEngine). But in all cases, web hosting will always have a web server component. Web servers most commonly listen on port 80 (unencrypted) or 443 (encrypted) on the server.
As per W3Techs, until recently, Apache used to be the #1 web server before Nginx surpassed it.
However, when developing for WordPress, we try not to make our features depend on the presence of a web server. That is a reason why server technology ranking shouldn’t concern us.
rtCamp has been using Nginx since 2009, so in rtCamp whenever we refer to a web server, it likely means Nginx.
WordPress and Web Server
As WordPress engineers, we need to deal with web servers in a few special cases:
- Some web server configurations can hijack PHP error logs, so you may not see the expected debug outcome.
- Some web servers are configured to talk to multiple application servers upstream, so you may not be seeing any hit to WordPress when expected.
- Web server (mis)configuration can give you unexpected URL redirects or 404s when working with permalinks/rewrite_rules in WordPress.
EasyDash (Applicable only to rtCampers)
With EasyDash, you can create a test/staging site of your own. Follow the steps mentioned in this EasyDash User Manual to set up your own site.
You may be interested in:
- Nginx beginner’s guide
- OpenResty
- Agentzh Nginx Tutorial — if you do end up loving Agentzh’s work, you can consider switching to the sys team!
- Local by FlyWheel
- WordPress with Docker