Last active
November 19, 2017 21:40
-
-
Save WebDevJL/6fa52c1626337537e58157626abc825f to your computer and use it in GitHub Desktop.
Ubuntu 16.04: enable http2 for Apache2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# $1 => UNIX user as parameter | |
# Done and working in a Linode 1GB on Nov, 19th. | |
cd ~ | |
# to enable http/2, copy these lines into /etc/apt/sources.list | |
su - | |
vim /etc/apt/sources.list | |
#deb-src http://archive.ubuntu.com/ubuntu/ xenial main universe restricted multiverse | |
#deb-src http://security.ubuntu.com/ubuntu xenial-security main universe restricted multiverse | |
#deb-src http://archive.ubuntu.com/ubuntu/ xenial-updates main universe restricted multiverse | |
apt-get update && apt-get upgrade | |
apt-get install curl devscripts build-essential fakeroot | |
echo "Switch to the main user on the VPS (except root user)" | |
su $1 | |
cd ~ | |
sudo apt-get install libnghttp2-dev | |
mkdir apache2 | |
cd apache2 | |
apt-get source apache2 | |
sudo apt-get build-dep apache2 | |
cd apache2-2.4.18 | |
sudo apt-get install curl devscripts build-essential fakeroot | |
fakeroot debian/rules binary | |
sudo cp debian/apache2-bin/usr/lib/apache2/modules/mod_http2.so /usr/lib/apache2/modules/ | |
exit | |
vim /etc/apache2/mods-available/http2.load | |
# And copy the following (and remove the comment characters): | |
#LoadModule http2_module /usr/lib/apache2/modules/mod_http2.so | |
#<IfModule http2_module> | |
#LogLevel http2:info | |
#</IfModule> | |
echo "Enable the HTTP2 module" | |
a2enmod http2 | |
vim /etc/apache2/apache2.conf | |
# add at the end: | |
#Protocols h2 http/1.1 | |
apachectl configtest | |
service apache2 restart | |
cd ~ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment