I spent this afternoon testing the next Ubuntu LTS release, Xenial Xerus. It’s not due to be released until April time, but there are some significant changes (PHP 7 and HTTP/2 under nginx) from the previous LTS release (14.04 Trusty Tahr) and I want to be prepared for the upgrade.
I downloaded and installed the latest daily server build in a virtual machine. The installation was painless and I experienced no issues. Great. Next, I set-up a working environment for WordPress. This was actually rather simple and involved installing the following packages:
nginx php7.0 php7.0-fpm php7.0-mysql mysql-server
I then created a copy of this site and moved it onto the VM. The only thing I had to change in my site’s nginx conf file was the path to the new PHP 7 unix domain socket, other than that, everything just worked.
Next job, enable HTTP/2. Now, this should have been as simple as adding “http2” on the listen stanza within the nginx conf file, but unfortunately, the Ubuntu Security team have issued a mandate to disable HTTP/2 for the nginx package. Grr.
I’m hoping that this is just a temporary thing and according to this Answers page, it should be enabled in the future.
Will HTTP/2 be enabled in Xenial at some point? Almost certain of it.
So anyway, I opted to remove the Ubuntu package and install the package provided by the nginx team, which is compiled with HTTP/2 support. Note, there isn’t a Xenial repo yet, so I installed the Wily version — I’m just playing with a test environment, I wouldn’t do this on a production machine. Anyhow, this fixed the issue and HTTP/2 started working. Cool beans.
And that’s where I have left it, for the moment. When I get time, I think I’ll set-up another virtual machine running Trusty Tahr and attempt to run some benchmarks and comparisons. If what I have read is true, I’m expecting that Xenial Xerus will show significant performance increases over Trusty Tahr.