Ever since google started to like https sites, having more mass installation of SSL-and where you can. Overall, in addition to more harassment for servers we have and degradation in speed. The good thing is, that HTTP2 the standard for more than a year and a half is integrated in all major browsers and servers and http support sufficiently stable. Unfortunately there is no stable debian packages to keep in the main http servers HTTP2. The versions that are necessary for us to operate HTTP2 are as follows:
- Apache > 2.4.17
- Nginx > 1.9.5
- other private do not excite me (lighttpd have possibly planned…..)
Mešanicata to me is great and according to be used depends on apache or nginx. I'm still not playing to let loose on the http2 apache debian 8 Since I've never had but have it so repoto backports, It won't be a big problem. For nginx has already played several times. Overall, the steps are few and relatively simple:
- Add nginx official repo – in debian is 1.6 x vesiâta. 🙄
- Install openssl yourself from backports is currently 1.0.2 (k) – What we need for alpn maintenance for all works and is fast
- you install the devscripts – This is the time to share that will bildnem our package because the official is compiled with openssl 1.0.1 t which does not work ALPN and not the browsers respond well and works only if http2-revving it
- inkrementirame the version to do not hold packages such as ciganiâta and there's a new version only to sinkenm sorsovete
Let's start step by step
Add nginx repo
deb http://nginx.org/packages/debian/ codename nginx deb-src http://nginx.org/packages/debian/ codename nginx
Add a k dev openssl library 1.0.2 and otherwise bildnem it again with 1.0.1 I t is the target
echo 'deb http://ftp.debian.org/debian jessie-backports main' | tee /etc/apt/sources.list.d/backports.list apt update && apt install libssl-dev -t jessie-backports
Now stuck to his add libraries needed for compilation of nginx
apt install devscripts apt build-dep nginx mkdir nginx-build cd nginx-build apt-get source nginx
If you are working correctly you should have a structure like
~/nginx-build # ll total 1004 drwxr-xr-x 10 root root 4096 Feb 21 18:37 nginx-1.10.3 -rw-r--r-- 1 root root 103508 Jan 31 17:59 nginx_1.10.3-1~jessie.debian.tar.xz -rw-r--r-- 1 root root 1495 Jan 31 17:59 nginx_1.10.3-1~jessie.dsc -rw-r--r-- 1 root root 911509 Jan 31 17:59 nginx_1.10.3.orig.tar.gz
Enter PPTA in which users code nginx in my case, this nginx-1.10.3 run the command with which incrementare version, I personally prefer to add 1 to this build
debchange --newversion 1.10.3-1
After you add a changelog and can proceed to the actual compilation
debuild -us -uc -i -I -b -j6
A little clarification on the configuration of the command:
-us -uc they say the script not to “signed” .dsc and changes files.. -i and -I make the script to ignore files for version control. -B to generate a binary only package. -j as with make how many parallel process to recompile 🙂
Once you've completed the above process should we install our new packages. If you have already installed nginx is better to uninstall it
apt remove nginx nginx-*
Also not a bad idea to make a backup of the nginx folder under /etc. In principle, when updating 1.6.5 to 1.10.3 I didn't have drama, but you never know. New Partei are in the higher-level directory, and must be installed with a command like:
dpkg -i ../*.deb
If everything went smoothly, you just have to launch the nginx process, and to set http2 that is not the purpose of this article.