Witajcie!
Po długej pzerwie – przepraszam za moją nieobecność, ale przeprowadziłem się “na swoje” i zmieniłem prace. Musiałem się zaaklimatyzować no i przyzwyczaić – dziś pzyjechałem na “weekend” do rodziców więc mam chwilkę czasu i postanowiłem napisać poradnik dot. kompilacji serwera WWW nginx którego zacząłem wszędzie stosować z dodatkiem Google Page Speed – taka konfiguracja działa już na dwóch serwerach jakimi zarządzam i działa to wręcz idealnie i bardzo szybko.. całośc kompiluje na Debianie 8.1 (robiłem też na 7 i również OK).
Na samym początku dodajemy do systemu możliwośc pobierania paczek źródłowych.
1. Dodajemy do pliku /etc/apt/sources.list ->
nano /etc/apt/sources.list
deb http://ftp.pl.debian.org/debian testing main contrib non-free deb-src http://ftp.pl.debian.org/debian testing main contrib non-free
2. Teraz naley zainstalować paczki potrzebne do kompilacji nginx
apt-get update; apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 libpcre3-dev unzip curl libcurl4-openssl-dev libossp-uuid-dev apt-get source nginx apt-get build-dep nginx
Pobieramy źródła nginx w wersji 1.9.3 (najnowsza na 01.08.2015)
3. Czas na dodatek Page Speed – przechodzimy do katalogu modules w miejscu źródeł nginx
cd /usr/src/nginx-1.9.3/debian/modules wget https://github.com/pagespeed/ngx_pagespeed/archive/v1.9.32.3-beta.tar.gz tar zxvf v1.9.32.3-beta.tar.gz cd /usr/src/nginx-1.9.3/debian/modules/ngx_pagespeed-1.9.32.3-beta wget https://dl.google.com/dl/page-speed/psol/1.9.32.3.tar.gz tar -xzvf 1.9.32.3.tar.gz
Edytujemy plik w którym definiujemy “z czym” ma się skompilować nam nginx
nano /usr/src/nginx-1.9.3/debian/rules
A robimy to doklejając:
--add-module=$(MODULESDIR)/ngx_pagespeed-1.9.32.3-beta
A wygląda to tak: (wycinek z części pliku)
... --add-module=$(MODULESDIR)/headers-more-nginx-module \ --add-module=$(MODULESDIR)/nginx-auth-pam \ --add-module=$(MODULESDIR)/nginx-cache-purge \ --add-module=$(MODULESDIR)/nginx-dav-ext-module \ --add-module=$(MODULESDIR)/nginx-development-kit \ --add-module=$(MODULESDIR)/nginx-echo \ --add-module=$(MODULESDIR)/ngx-fancyindex \ --add-module=$(MODULESDIR)/nginx-http-push \ --add-module=$(MODULESDIR)/nginx-lua \ --add-module=$(MODULESDIR)/nginx-upload-progress \ --add-module=$(MODULESDIR)/nginx-upstream-fair \ --add-module=$(MODULESDIR)/ngx_http_substitutions_filter_module \ --add-module=$(MODULESDIR)/ngx_pagespeed-1.9.32.3-beta %: dh $@ --with systemd override_dh_auto_configure: $(foreach flavour,$(FLAVOURS),config.arch.$(flavour)) override_dh_auto_build: $(foreach flavour,$(FLAVOURS),build.arch.$(flavour)) override_dh_strip: $(foreach flavour,$(FLAVOURS),strip.arch.$(flavour)) override_dh_clean: $(foreach flavour,$(FLAVOURS),clean.$(flavour)) ...
4. Kompilujemy..
cd /usr/src/nginx-1.9.3/ && dpkg-buildpackage -b
Po zakończonej kompilacji przechodzimy do instalacji:
cd /usr/src/ dpkg --install nginx-common_1.9.3-1_all.deb nginx_1.9.3-1_all.deb nginx-extras_1.9.3-1_amd64.deb
5. Restart nginx i sprawdzamy czy działa 😉 Jak zresetuje się bez błędów to jesteśmy w domu 🙂
/etc/init.d/nginx restart