Beschleunigen Sie die Nginx -Leistung mit ngx_pagespeed auf CentOS 7

Beschleunigen Sie die Nginx -Leistung mit ngx_pagespeed auf CentOS 7

Nginx [Engine X] ist eine kostenlose und open-Source-, plattformübergreifende, leistungsstarke Webserver- und Reverse-Proxy-Software, die in C geschrieben wurde. Es ist auch ein Standard -IMAP/POP3- und TCP/UDP -Proxy -Server und kann als Lastausgleichsbalancer verwendet werden.

Nginx ist ein bekannter HTTP -Server (vergleichbar mit Apache HTTP -Server), der zahlreiche Websites im Web mit Strom versorgt. Es ist beliebt für seine hohe Leistung und Stabilität.

Es sind verschiedene wichtige Faktoren zu berücksichtigen, wenn Sie die Benutzererfahrung auf Ihrer Website verbessern möchten, einschließlich der Geschwindigkeit und der Seitengeschwindigkeit von Site (auch als Seitenladezeit bezeichnet). Wenn Ihre Website von Nginx betrieben wird, können Sie verwenden NGX_PAGESPEED für diesen Zweck.

Vorgeschlagene Lesen: Installieren Sie mod_pageSpeed, um die Apache -Server -Leistung zu verbessern

NGX_PAGESPEED ist ein kostenloses und Open -Source -Nginx. Es verringert die Zeit, die Benutzer benötigen, um Ihren Site -Inhalt zu sehen und zu interagieren, erheblich.

NGX_PAGESPEED -Funktionen:

  • Unterstützung für HTTPS und URL -Kontrolle.
  • Bildoptimierung: Striping Meta-Data, Dynamik-Größenänderung, Wiederbelebung.
  • CSS & JavaScript -Minifikation, Verkettung, Einbeziehung und Umrissen.
  • Kleine Ressourceneinbringer.
  • Image und JavaScript -Laden verschieben.
  • HTML -Umschreiben.
  • Cache -Lebensdauer -Erweiterung.
  • Ermöglicht das Konfigurieren für mehrere und viele andere Server.

In diesem Tutorial zeigen wir, wie man installiert Nginx mit NGX_PAGESPEED und testen Sie die gesamte Installation auf Rhel/Centos 7.

Aufmerksamkeit: Debian- und Ubuntu -Benutzer können dieser Anleitung folgen, um ngx_pageSpeed ​​zu installieren, um die NGINX -Leistung zu verbessern.

Schritt 1: Installieren Sie Nginx aus der Quelle

1. Installieren Nginx mit NGX_PAGESPEED erfordert, dass Sie es aus der Quelle kompilieren. Installieren Sie zuerst alle Pakete, die zum Kompilieren von Nginx aus der Quelle wie dieser erforderlich sind.

# YUM Installation WGet GCC CMAKE UNZIP GCC-C ++ PCre-Devel ZLIB-Devel oder # Yum Group Install "Entwicklungstools" 
Installieren Sie Entwicklungstools auf CentOS 7

2. Als nächstes erhalten Sie Quelldateien der neuesten Version von Nginx (1.13.2 Zum Zeitpunkt dieses Schreibens) mit dem Befehl wGet und extrahieren Sie den heruntergeladenen Teerball wie unten.

# mkdir ~/downloads # cd ~/downloads # wget -c https: // nginx.org/download/nginx-1.13.2.Teer.gz # tar -xzvf nginx -1.13.2.Teer.gz 
Laden Sie Nginx -Quelldateien herunter

3. Laden Sie als Nächst.

# WGet -c https: // github.com/pageSpeed/ngx_pagespeed/archiv/v1.12.34.2-stabil.ZIP # Unzipp V1.12.34.2-stabil.Reißverschluss 
Laden Sie NGX_PAGESPEED herunter

4. Gehen Sie nun in das ungifte Ngx_PageSpeed ​​-Verzeichnis und erhalten Sie die PageSpeed ​​-Optimierungsbibliotheken, um Nginx wie folgt zu kompilieren.

# CD NGX_PAGESPEED-1.12.34.2 -stabil/ # WGet -c https: // dl.Google.com/dl/pagespeed/psol/1.12.34.2-X64.Teer.gz # tar -xvzf 1.12.34.2-X64.Teer.gz 
Laden Sie PageSpeed ​​-Optimierungsbibliotheken herunter

Schritt 2: Konfigurieren und kompilieren Sie Nginx mit ngx_pageSpeed

5. Jetzt geh in die nginx-1.13.2 Verzeichnis und konfigurieren Sie die Nginx -Quelle, indem Sie die folgenden Befehle ausführen.

# CD ~/downloads/nginx-1.13.2 # ./configure --add-module = $ home/downloads/ngx_pagespeed-1.12.34.2-stabil/--user = nobod.log--http-log-path =/var/log/nginx/access.log-pid-path =/var/run/nginx.pid $ ps_ngx_extra_flags 
Konfigurieren Sie Nginx mit ngx_pageSpeed

6. Als nächstes kompilieren und installieren Nginx folgendermaßen.

# # Machen Sie die Installation 
Kompilieren Sie Nginx mit ngx_pagespeed

7. Erstellen Sie nach Abschluss des Installationsprozesses alle erforderlichen Symlinks für Nginx.

# ln -s/usr/local/nginx/conf//etc/nginx/ # ln -S/usr/local/nginx/sbin/nginx/usr/sbin/nginx 
Erstellen Sie Nginx Symlinks

Schritt 3: Erstellen der Nginx -Einheitsdatei für systemd

8. Als nächstes seit systemd ist der drin System in Centos 7, Sie müssen die Nginx -Einheitsdatei dafür manuell erstellen.

FISRT erstellen Sie die Datei /lib/systemd/system/nginx.Service, Geben Sie dann die NGINX -Systemdatei -Datei ein, fügen Sie die Konfiguration der Einheitsdatei in die folgende Datei ein.

# vi/lib/systemd/system/nginx.Service 

Beachten Sie den Ort der Pidfile und das Nginx Binary, das Sie beim Konfigurieren und Kompilieren von NginX festlegen, setzen Sie sie in den entsprechenden Variablen in der Unit -Datei fest, wie unten gezeigt:

[Einheit] Beschreibung = der Nginx HTTP und Reverse Proxy -Server nach = syslog.Zielnetzwerk.Ziel-Remote-FS.Ziel NSSS-Lookup.Ziel [Service] type = gabing pidfile =/var/run/nginx.pid execstartpre =/usr/sbin/nginx -t execstart =/usr/sbin/nginx execreload =/bin/Kill -s Hup $ mainpid execStop =/bin/Kill -s Quit $ mainpid privatetmp = true [install] suchtby = multi multi multi -Benutzer.Ziel 
Nginx Systemd Service Unit Datei

Speichern Sie die Datei und schließen Sie sie.

9. An diesem Punkt starten Sie nginx Service für die Zwischenzeit und ermöglicht es, mit dem Systemstart zu beginnen, indem die folgenden Befehle ausgeführt werden.

# Systemctl start nginx # systemctl aktivieren nginx # systemctl status nginx 
Starten Sie und aktivieren Sie Nginx

Schritt 4: Konfigurieren Sie Nginx mit dem PageSpeed ​​-Modul

10. Wenn nginx installiert ist, müssen Sie als nächstes aktivieren NGX_PAGESPEED Modul. Erstellen Sie mit dem Erstellen eines Verzeichnisses, in dem das Modul die Dateien für Ihre Website zwischenspeichert und die entsprechenden Berechtigungen in diesem Verzeichnis mit den folgenden Befehlen festgelegt hat.

# Mkdir -p /var /ngx_pagespeed_cache # chown -r nobels nobels: nobel /var /ngx_pagespeed_cache 
Erstellen Sie das Nginx -Cache -Verzeichnis

11. Jetzt ist es Zeit zu aktivieren NGX_PAGESPEED Modul, öffnen Sie die Nginx -Konfigurationsdatei und fügen Sie die folgenden Zeilen hinzu.

Wichtig: Wenn Sie auf dem Server irgendwelche virtuellen Nginx -Hosts konfiguriert haben, fügen Sie den oben genannten PageSpeed ​​-Direktiven jedem Serverblock hinzu, um NGX_PAGESPEED auf jeder Website zu aktivieren.

# vi/etc/nginx/nginx.Conf 

Fügen Sie die folgende hinzu NGX_PAGESPEED Konfigurationsleitungen im Serverblock.

# PageSpeed ​​Haupteinstellungen PageSpeed ​​auf; pageSpeed ​​fileCachepath /var /ngx_pageSpeed_cache; # Stellen Sie sicher. Ort ~ "\.PageSpeed ​​\.([a-z] \.)?[a-z] 2 \.[^.] 10 \.[^.]+"oder 

Das Folgende ist ein funktionierendes Beispiel für die Nginx -Konfigurationsdatei mit NGX_PAGESPEED im Standard -virtuellen Host aktiviert.

Nginx -Konfiguration mit ngx_pageSpeed
#User niemand; Worker_Processes 1; #Error_log -Protokolle/Fehler.Protokoll; #Error_log -Protokolle/Fehler.Protokollbescheid; #Error_log -Protokolle/Fehler.Protokollinformationen; #PID logs/nginx.PID; Ereignisse Worker_Connections 1024;  http MIME einschließen.Typen; Default_type Application/Oktettstrom; #Log_Format Main '$ remote_addr - $ remote_user [$ time_local] "$ request"' ' #' $ status $ body_bytes_sent "$ http_referer" '' # '"$ http_user_agent" $ http_x_forwarded_fored_fored_ford_ford_fored #Access_log Protokolle/Zugriff.log main; sendFile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; Server Listen 80; server_name localhost; #Charset Koi8-R; #Access_log Protokolle/Host.Zugang.log main; # PageSpeed ​​Haupteinstellungen PageSpeed ​​auf; pageSpeed ​​fileCachepath /var /ngx_pageSpeed_cache; # Stellen Sie sicher. Ort ~ "\.PageSpeed ​​\.([a-z] \.)?[a-z] 2 \.[^.] 10 \.[^.]+"oder Ort / root html; Indexindex.HTML -Index.HTM;  #Error_page 404 /404.html; # Server -Fehlerseiten auf die statische Seite /50x umleiten.HTML # ERROR_PAGE 500 502 503 504 /50x.html; Position = /50x.html root html;  # Proxy die PHP -Skripte zum Apache -Hören auf 127.0.0.1:80 # #Location ~ \.php $  # proxy_pass http: // 127.0.0.1; # # Übergeben Sie die PHP -Skripte an den FastCGI -Server, der auf 127 gehört.0.0.1: 9000 # #Location ~ \.php $  # root html; # FASTCGI_PASS 127.0.0.1: 9000; # FASTCGI_INDEX INDEX.PHP; # fastcgi_param script_filename /scripts $ fastcgi_script_name; # FASTCGI_PARAMS integrieren; # # verweigern den Zugriff auf .HTaccess -Dateien, wenn das Dokumentroot von Apache mit dem Nginx -Eins # #Location ~ /\ übereinstimmt.ht  # alles; # # Ein weiterer virtueller Host mit Mix aus IP-, Name- und Port-basierten Konfiguration # #server  # listen 8000; # Hören Sie Somename: 8080; # Server_Name Somename alias Another.alias; # location /  # root html; # Indexindex.HTML -Index.HTM; # # # Https server # #server  # listen 443 SSL; # server_name localhost; # SSL_Certificate cert.Pem; # SSL_Certificate_key cert.Taste; # SSL_Session_Cache Shared: SSL: 1M; # SSL_Session_Timeout 5m; # SSL_CIPHERS hoch:!Anull:!MD5; # ssl_prefer_server_ciphers on; # location /  # root html; # Indexindex.HTML -Index.HTM; # # 

12. Stellen Sie anschließend sicher, dass die Nginx -Konfigurationsdatei durch Ausführen des folgenden Befehls die folgende Ausgabe angezeigt wird, wenn alles in Ordnung ist.

# nginx -t 
Überprüfen Sie die NGINX -Konfiguration auf Fehler

13. Starten Sie den Nginx -Server schließlich neu, damit die Änderungen wirksam werden können.

# SystemCTL Neustart Nginx 

Schritt 5: Testen von Nginx mit ngx_pageSpeed

14. Zu wissen, ob NGX_PAGESPEED arbeitet jetzt in Verbindung mit Nginx, es muss in der angezeigt werden X-Page-Geschwindigkeit Header.

# curl -i -p http: // localhost 
Testen Sie Nginx mit ngx_pageSpeed

Falls Sie den obigen Header nicht angezeigt haben, kehren Sie dann zu Schritt 11 zurück und befolgen Sie die Anweisungen vorsichtig, um NGX-PageSpeed ​​mit den folgenden Schritten zu ermöglichen.

NGX-PAGESPEED GitHub Repository: https: // github.com/pageSpeed/ngx_pagespeed

Das ist alles! In diesem Tutorial haben wir gezeigt, wie NGINX mit dem Modul ngx_pageSpeed ​​installiert und konfiguriert wird, um die Site -Leistung zu optimieren und zu verbessern und die Seitenladezeit zu verkürzen.

Um den NGINX -Webserver zu sichern, lesen Sie diesen Artikel - den ultimativen Handbuch, um die Leistung des NGINX -Webservers zu sichern, zu härten und zu verbessern.

Zögern Sie wie immer nicht, uns über Fragen oder Gedanken in Bezug auf dieses Tutorial zu informieren.