Gotowy nginx-1.9.3 + PageSpeed + PHP5-FPM

sp_98957-57366-i_rc

 

Witajcie,
Kilka dni temu opisywałem sposób kompilacji serwera WWW (chyba najlepszego !!) jakim jest nginx w najnowszej wersji 1.9.3 z wkompilowanym modułem PageSpeed i zabezpieczeniem przeciwko atakom LogJam!

Na początek małe porównanie działania strony internetowej – unitraklub.pl – jest to Drupal 6 (wiec jak wiemy nie najszybszy CMS)

1. Hostingu (Pro w OVH – Apache + Varnish i MySQL)

uk_gt1

https://gtmetrix.com/reports/ovh.unitraklub.pl/4WoP8AJq#waterfall

2. Serwera z RunAbove (nginx-1.9.3 + PageSpeed + MariaDB 10.1.6)

uk_gt2

https://gtmetrix.com/reports/unitraklub.pl/4w4i220j

Prawda że jest różnica ? – dodam że wersja na hostingu została włączona na cele testu  a  wersja z nginx działa produkcyjnie.

 

Czas na instalacje:

1. Pobieramy gotowe paczki:

wget http://pliki.linuxiarz.pl/08-2015/nginx-1.9.3-linuxiarz_pl.tar.gz; tar xvf nginx-1.9.3-linuxiarz_pl.tar.gz ; rm nginx-1.9.3-linuxiarz_pl.tar.gz ; cd nginx/

2. Instalujemy wszelkie potrzebne paczki:

apt-get install fontconfig-config fonts-dejavu-core libfontconfig1 libgd3 libjbig0 \
libjpeg62-turbo libluajit-5.1-2 libluajit-5.1-common libperl5.20 \
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib libtiff5 \
libxpm4 libxslt1.1 python python-minimal python2.7 python2.7-minimal curl nano sendmail -y

3. Instalacja:

dpkg -i nginx-common_1.9.3-1_all.deb  nginx-extras_1.9.3-1_amd64.deb nginx-doc_1.9.3-1_all.deb nginx_1.9.3-1_all.deb

Przy okazji stworzymy certyfikat do zabezpieczenia LogJam

mkdir -p /etc/ssl/private
chmod 710 /etc/ssl/private
cd /etc/ssl/private
openssl dhparam -out dhparams.pem 2048
chmod 600 /etc/ssl/private/dhparams.pem

4. Pobieramy przygotowane przeze mnie pliki konfiguracyjne:

rm /etc/nginx/sites-available/* ; rm /etc/nginx/sites-enabled/* ; rm /etc/nginx/nginx.conf
wget http://pliki.linuxiarz.pl/08-2015/nginx.conf -O /etc/nginx/nginx.conf ; wget http://pliki.linuxiarz.pl/08-2015/default.conf -O /etc/nginx/conf.d/default.conf 

5. Komendą nginx -V  można sprawdzić czy wszystko się zainstalowało.

6. Opcjonalnie instalujemy PHP5-FPM z bazą MariaDB 10.1.6 (na chwilę pisania artykułu ostatnia wersja) oraz PHPMyAdmin

apt-get install php5-fpm -y python-software-properties ; apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xcbcb082a1bb943db ;
echo 'deb http://mariadb.kisiek.net//repo/10.1/debian sid main' >> /etc/apt/sources.list ; apt-get update
apt-get install mariadb-server phpmyadmin -y
/etc/init.d/mysqld start
/etc/init.d/php5-fpm restart
/etc/init.d/nginx start
ln -s /usr/share/phpmyadmin/ /var/www/html/pma

mgix_maria

 

Panel WWW dla GooglePageSpeed można wyłączyć, opcje znajdują się w pliku /etc/nginx/nginx.conf:

 

pagespeed StatisticsPath /ngx_pagespeed_statistics;
pagespeed GlobalStatisticsPath /ngx_pagespeed_global_statistics;
pagespeed MessagesPath /ngx_pagespeed_message;
pagespeed ConsolePath /pagespeed_console;
pagespeed AdminPath /pagespeed_admin;
pagespeed GlobalAdminPath /pagespeed_global_admin

Powyższe opcje świadczą o ścieżce panelu, np.: http://adres/ngx_pagespeed_statistics i.t.d