NGINX mit SPDY, Google PageSpeed auf CentOS mit Plesk installieren.
Dieser Beitrag wurde 9243 mal angezeigt.
Hy Leute,
ich möchte euch heute mal schreiben, wie ihr euren CentOS, RedHat oder Fedora Server mit Nginx, dem Modul SPDY sowie mit Googles Pagespeed, zu etwas mehr Speed verhelfen könnt.
Wer kein Plesk hat, muss aber noch lange nicht auf NGINX verzichten.
Besucht einfach diese Anleitung, wenn es zum Teil der Aktivierung des Moduls geht.
Step 1
Um die aktuellste Version zu laden, geht ihr auf die Seite von Google.
Verbindet euch als Root mit eurem Server. z.b. mit Putty. Folgt der Anleitung.
In meinem Fall ist dies:
sudo yum install gcc-c++ pcre-devel zlib-devel make unzip openssl-devel cd NPS_VERSION=1.9.32.6 wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip unzip release-${NPS_VERSION}-beta.zip cd ngx_pagespeed-release-${NPS_VERSION}-beta/ wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz tar -xzvf ${NPS_VERSION}.tar.gz # extracts to psol/ cd # check http://nginx.org/en/download.html for the latest version NGINX_VERSION=1.9.4 wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz tar -xvzf nginx-${NGINX_VERSION}.tar.gz cd nginx-${NGINX_VERSION}/
Ab jetzt kommt eine Abweichung. Da wir ja schon NGINX installiert haben, wollen wir natürlich nicht, das dieser seine Eigenschaften verliert. Daher müssen wir NGINX fragen, welche Version mit welcher Config hinterlegt ist. Dies machen wir mit:
nginx -V
Wir erhalten nun eine Status Rückmeldung:
nginx version: nginx/1.6.0 TLS SNI support enabled configure arguments: --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 --add-module=/usr/share/passenger/ngx_http_passenger_module
Kopiert euch die Konfiguration Argumente.
Aktuell macht ein Plugin „passenger“ Probleme. Wenn ihr eine Fehlermeldung bekommt, entfernt dieses Modul.
--add-module=/usr/share/passenger/ngx_http_passenger_module
Nun möchten wir natürlich SPDY und Pagespeed mit installieren. Dazu hängen wir 2 weitere Werte mit an die Argumente.
--with-http_spdy_module --add-module=$HOME/ngx_pagespeed-release-${NPS_VERSION}-beta
Das ganze müsste dann so aussehen:
./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 --add-module=$HOME/ngx_pagespeed-release-${NPS_VERSION}-beta
Führt das ganze aus. Es dauert einen kleine Augenblick. Anschließend kompiliert ihr das ganze und installiert es.
make make install
Damit die neue Installation greift, müssen wir unseren NGINX neu starten.
service nginx restart
Glückwunsch, das war es eigentlich schon 😉
Step 2
Fasst. Den unsere Webseiten benötigen auch noch eine Config, damit das ganze überhaupt greift.
Öffnet euer Plesk Backend und stellt euch auf die entsprechende Seite.
Hier geht ihr auf „Webserver-Einstellungen“
- Scrollt etwas nach unten zu den Nginx-Einstellungen.
- Macht einen Hacken bei Statische Dateien direkt durch Nginx bedienen
- Fügt dieses dort ein:
ac3 avi bmp bz2 cue dat doc docx dts exe flv gz htm html img iso mkv mp3 mp4 mpeg mpg ogg pdf ppt pptx qt rar rm swf tar tgz txt wav xls xlsx zip
- Fügt dieses dort ein:
- Nun kommen wir zu dem wichtigen Teil, zu den Zusätzlichen Anweisungen.
Ich habe mir hier schon einige Werte raus gesucht, so wie ich finde, das sie am besten passen. Diese könnt ihr natürlich auch abändern.
pagespeed on; # Needs to exist and be writable by nginx. Use tmpfs for best performance. pagespeed FileCachePath /var/cache/ngx_pagespeed_cache; pagespeed EnableFilters combine_css,combine_javascript,combine_heads,convert_meta_tags,recompress_images; # Ensure requests for pagespeed optimized resources go to the pagespeed handler # and no extraneous headers get set. location ~ "\.pagespeed\.([a-z]\.)?[a-z]{2}\.[^.]{10}\.[^.]+" { add_header "" ""; } location ~ "^/pagespeed_static/" { } location ~ "^/ngx_pagespeed_beacon$" { } gzip on; gzip_buffers 16 8k; gzip_comp_level 1; gzip_http_version 1.1; gzip_min_length 10; gzip_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon application/vnd.ms-fontobject font/opentype application/x-font-ttf; gzip_vary on; gzip_proxied any; # Compression for all requests. gzip_disable "msie6"; location ~* \.(?:ico|css|js|gif|jpg|jpeg|png)$ { expires 30d; add_header Pragma public; add_header Cache-Control “public”; try_files $uri @fallback; }
Speichert die Seite. Es sollte nun ein Verzeichnis erstellt worden sein.
/var/cache/ngx_pagespeed_cache
Damit NGINX darauf ordentlich zugreifen kann, setzt die Schreibrechte auf 0777.
Step 3
Öffnet nun euere Webseite und prüft im Ordner /var/cache/ngx_pagespeed_cache ob dort auch Verzeichnisse erstellt werden.
Wenn ja, habt ihr alles richtig gemacht 😉
Ich hoffe ihr konntet mit dem Tut. etwas anfangen 😉 Wenn ihr Verbesserungsvorschläge habt, nur her damit 😉
Beste!
Ihr dürft mir auch eine kleine Spende zukommen lassen ? Den Spende Button findet ihr ganz unten oder oben ?
BTC: 122aH1XgqetWJyfrdNcxd3kJY7DNaSrvMK
eMark: NdB7DpsLhYMEP8WqPpQ2YMedkS3nRQTJfQ
Hi Sven,
Danke, Ich habe es wirklichgeschaft meun Ubunru 14.04. mit Plesk 12.5.x mit Ngnix 1.9.9 und Pagespeed zu installieren.
Hatte jetzt gestern gesehen da es Ngnix 1.9.10 gibt.
Wie geht man in diesem fall der Upgates vor?
Hy,
im Prinzip geht man genau so vor, wie in der Beschreibung, nur halt mit der entsprechenden Version.
Das ist aber alles Testweise, wenn es bei dir Fehlschlägt, kann es sein, das ein Plugin z.b. nicht kompatible ist.
Dann muss die alte Version wieder installiert werden.
Bitte versuch es mal selber, bei mir bleibt die version leider die selbe… oder muss ich vorher noch was anderes machen?