Server setup advice - Wordpress

I´m thinking of upgrading my server that hosts a medium wordpress site.

After some researches i made up this configuration, what do you think?

I´m on a Linode 4GB.

Ubuntu 16.04

NginX frontend (Static content)

Apache backend (Dynamic Content)

HHVM with PHP-FPM Fallback

MariaDB

(Maybe PHP 7, maybe Redis for Cache)

What do you think?

2 Replies

Personally, I would:

1) Replace the Apache backend with nginx. There's no point involving two different web servers, that is an over-complication in my opinion and nginx will be much more efficient. Having said that, I'd only do this if you have experience configuring nginx as a backend (or are willing to put the time in to learn it, which will be a lot of trial and error), as it is definitely trickier than Apache and you'd have to understand it enough to translate the majority of guides which refer to Apache concepts (like editing htaccess files which do not exist in nginx).

2) Ditch HHVM in favor of standard PHP7 (via PHP-FPM). Again, you can simplify your stack, the performance will be similar and you're much less likely to run into compatibility issues going forward (HHVM isn't fully compatible with PHP7 for example).

3) Introduce Varnish full-page cache into the stack. This would sit in-between Nginx frontend and Nginx backend (because Varnish doesn't support HTTPs, you would still need nginx to act as the frontend). This would increase performance considerably, as the majority of requests could be served from in-memory cache. Again, only do this if you have experience (or are willing to put the time into learning) configuring Varnish and understand how to clear the cache appropriately. There are WordPress plugins available for Varnish, but rarely is it a case of simple 'plug and play'.

Thank you very much Jonny, i will consider your advices.

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct