Conversion of Apache to nginx configuration? (HTTP/2)

I have a set of virtual hosts, containing Plone instances; the configuration is non-trivial, since it includes the use of Apache macros and, of course, https.

I'd like to use HTTP/2 -- mainly for performance reasons. Apache 2.4.17+ sports a mod_http2 module for this purpose.

Now my CentOS 7 Linux has Apache 2.4.6, which is updated regularly, but of course won't ever see the features of later versions. And it seems the Plone community tends to use nginx anyway; so I consider to move over to nginx.

So, here is my question: Do we have some conversion tool to help with this task?

There is apache2nginx, but this won't be of much use for me since it supports Apache 2.2 only, which doesn't include macros.

I usually move my webserver stuff and Plone installations usually every two or three years to a new server with decent packages...this usually does not take no longer than some hours. I would never ever switch from Apache to Nginx just for this reasons...there is too many logic and special configurations in my Apache setups...no way to migrate this without much effort..

Well, it wouldn't be just for this reason:

  • nginx is said to use less resources
  • it contains load balancing (which I don't have yet)
  • the majority of the Plone folks seems to use it
  • (judged by the amount of documentation here, at least),
  • so the Plone-related documentation is a little bit less poor.

The mileage will vary, of course.

Do you really have any resource issues with Apache? The resource hog is always Plone.
Apache + HaProxy is doing fine for many years. My preferred option would be to switch to Caddy2 if there would be a need to do so, not to Nginx. But Apache also has a load balancer module. As said: I would update the OS or switch to a more modern OS other than CentOS 7. At some point it is necessary to update the underlaying OS - and if there is no upgrade way, you need to move on for security reasons anyway.

Yes, whatever. But you are an expert with lots of Plone experience from the beginning, while I am just one person for development and setup of our site, and our current hoster is quite Zope/Plone agnostic. (We might move, but then I'll adjust to the combo the new hoster suggests, which might contain nginx or a recent Apache).

How is setup for this with Plone?
Are there any docs somewhere?

mod_proxy_balancer

Plone Foundation Code of Conduct