nginx-plesk-spdy-logo
Die Nginx Version unter Plesk enthält aktuell keine Unterstützung für SPDY. Um dies zu aktivieren müssen wir NGINX aus den Sourcen bauen und das SPDY-Modul aktivieren. Dazu gehen wir wie folgt vor:

Vorbereitent müssen einige Komponenten installiert werden um Nginx im Anschluss korrekt zu bauen.

apt-get install build-essential
apt-get install libssl-dev
apt-get install libpcre3 libpcre3-dev

Nun holen wir uns die aktuelle Stable Version 1.6.2 von Nginx und entpacken diese.

cd /usr/local/src/
wget http://nginx.org/download/nginx-1.6.2.tar.gz
tar -xvf nginx-1.6.2.tar.gz
cd nginx-1.6.2/

Um das SPDY-Modul zu aktvieren rufen wir uns die aktuellen Nginx Konfigurationsparameter ab und fügen das Modul mit –with-http_spdy_module hinzu.

Abrufen der aktuellen Konfiguration

nginx -V

--prefix=/usr/share --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --user=nginx --group=nginx --with-ipv6 --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_dav_module --with-http_gzip_static_module --with-http_stub_status_module

Nun übernehmen wir die aktuelle Konfiguration in unsere Sourcen und fügen SPDY hinzu und Builden die neue Version.

./configure --prefix=/usr/share --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --user=nginx --group=nginx --with-ipv6 --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_sub_module --with-http_dav_module --with-http_gzip_static_module --with-http_stub_status_module --with-http_spdy_module

make
make install

Unser Nginx unterstützt jetzt SPDY. Nun erweitern wir unsere Plesk konfiguration. Dazu erstellen wir ein Plesk Custom Domain Template, so dass die konfiguration bei einem Plesk Update etc. erhalten bleibt.

mkdir /usr/local/psa/admin/conf/templates/custom
mkdir /usr/local/psa/admin/conf/templates/custom/domain
cp /usr/local/psa/admin/conf/templates/default/domain/nginxDomainVirtualHost.php /usr/local/psa/admin/conf/templates/custom/domain/

Unser Template „nginxDomainVirtualHost.php“ bearbeiten wir jetzt und fügen SPDY in die SSL konfiguration.

server {
 listen escapedAddress . ':' . $OPT['frontendPort'] .
 ($OPT['default'] ? ' default_server' : '') . ($OPT['ssl'] ? ' ssl spdy' : '') ?>

Jetzt nur noch die Virtuellen Hosts mit den folgenden Befehl rekonfigurieren und SPDY ist unter allen Domains verfügbar.

/usr/local/psa/admin/bin/httpdmng --reconfigure-all
Recommended Posts
Comments
  • Fabian
    Antworten

    Hallo,

    danke für deine Zusammenfassung zu Plesk & Nginx / http2.

    Eine Frage dazu hätte ich allerdings noch. Speziell was die Templates angeht….

    werden grundsätzlich alle Dateien in dem erstellten Custom Ordner berücksichtigt wenn man mehrer Dateien kopieren / bearbeiten würde?

    Und kann man im Plesk explizit sagen…. Kunde X bzw. Domain X soll durch ngnix ausgeliefert werden? oder schaltet es sich global ein und arbeitet bei jeder Domain auf dem Server?

    Danke
    Fabian

Deine Meinung