GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So richten Sie Nginx mit dem Google Pagespeed-Modul unter Debian 11 ein

Das Google Pagespeed-Modul ist ein Open-Source-Modul zur Optimierung Ihrer Websites unter dem Nginx- und Apache-Webserver. Das Pagespeed-Modul ist ein Modul auf Serverebene, das neben dem Nginx- und Apache-Webserver installiert wird.

Das Pagespeed-Modul verbessert die Leistung und Geschwindigkeit Ihrer Website, indem statische Dateien auf Ihren Websites optimiert werden. Das Pagespeed-Modul optimiert Bilder auf Ihren Websites, minimiert statische Dateien wie HTML, CSS und JavaScript und optimiert das Datei-Caching.

In diesem Tutorial zeigen wir Ihnen, wie Sie das Nginx Pagespeed-Modul auf dem neuesten Debian 11 Bullseye erstellen. Diese Anleitung kann auf den aktuellen Stand Ihrer Nginx-Installation angewendet werden, da Sie nur das Nginx-Modul erstellen.

Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen.

  • Betriebssystem:Debian 11 Bullseye
  • Root-Rechte

Fangen wir jetzt an.

Paketabhängigkeiten installieren

Zuerst installieren Sie Paketabhängigkeiten zum Kompilieren des Nginx-Moduls.

1. Führen Sie den folgenden apt-Befehl aus, um die aktuellen Repositories auf Ihrem System zu aktualisieren.

sudo apt update

2. Installieren Sie als Nächstes grundlegende Paketabhängigkeiten zum Kompilieren von Programmen mit apt Befehl unten.

sudo apt install curl dpkg-dev build-essential zlib1g-dev git libpcre3 git libpcre3-dev unzip uuid-dev -y

3. Installieren Sie danach Build-Abhängigkeiten zum Kompilieren des Nginx-Moduls.

sudo apt build-dep nginx -y

Überprüfen der aktuellen Nginx-Version

Stellen Sie zum Erstellen eines benutzerdefinierten Nginx Pagespeed-Moduls sicher, dass Ihr aktueller Nginx-Webserver dieselbe Version des Nginx-Quellcodes enthält, die Sie zum Erstellen des Nginx-Moduls verwenden werden.

1. Führen Sie den folgenden Befehl aus, um die Nginx-Version zu überprüfen.

nginx -v

In diesem Beispiel ist die aktuell auf unserem Computer installierte Nginx-Version „1.18.0 '. Unten sehen Sie eine ähnliche Ausgabe.

nginx version: nginx/1.18.0

Wenn Sie das Nginx-Paket nicht auf Ihrem System haben, installieren Sie es optional aus dem offiziellen Debian-Repository mit dem folgenden apt-Befehl.

sudo apt install nginx -y

2. Erstellen Sie als Nächstes mit dem folgenden Befehl eine neue temporäre Umgebungsvariable für Ihre Nginx-Version.

export NG_VER=1.18.0

Nginx- und Pagespeed-Quellcode herunterladen

In diesem Schritt laden Sie den Nginx-Quellcode und das Pagespeed-Modul auf Ihren Server herunter. Dieser Nginx-Quellcode hat dieselbe Version wie Ihr aktuelles Nginx-Paket.

1. Erstellen Sie ein neues Projektverzeichnis „/usr/src/nginx ' und gehe hinein.

mkdir -p /usr/src/nginx; cd /usr/src/nginx

2. Führen Sie nun den folgenden Befehl aus, um den Nginx-Quellcode herunterzuladen und zu extrahieren.

wget http://nginx.org/download/nginx-$NG_VER.tar.gz
tar -xzvf nginx-$NG_VER.tar.gz

3. Als nächstes klonen Sie das Nginx Pagespeed-Modul in das aktuelle Verzeichnis, und nachdem der Vorgang abgeschlossen ist, sehen Sie ein neues Verzeichnis „incubator-pagespeed-ngx“.

git clone https://github.com/apache/incubator-pagespeed-ngx.git

4. Wechseln Sie zum 'incubator-pagespeed-ngx '-Verzeichnis und wechseln Sie zum stabilen Zweig des Nginx Pagespeed-Moduls.

cd incubator-pagespeed-ngx/
git checkout latest-stable

5. Prüfen Sie die Datei 'PSOL_BINARY_URL ', um den Download-Link der Page Optimization Library (PSOL) zu erhalten. Diese Bibliothek wird für das Nginx Pagespeed-Modul benötigt.

cat PSOL_BINARY_URL

Sie sehen eine ähnliche Ausgabe wie unten. Die Variable '$BIT_SIZE_NAME ' ist Ihre Serverarchitektur.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz

6. Erstellen Sie nun eine neue temporäre Umgebungsvariable „BIT_SIZE_NAME“ mit dem Wert Ihrer Serverarchitektur. Das folgende Beispiel verwendet die 'x64'- oder 64-Bit-Serverarchitektur.

export BIT_SIZE_NAME=x64

7. Laden Sie nun den PSOL-Quellcode herunter und extrahieren Sie ihn.

wget https://dl.google.com/dl/page-speed/psol/1.13.35.2-$BIT_SIZE_NAME.tar.gz
tar -xzvf 1.13.35.2-$BIT_SIZE_NAME.tar.gz

Jetzt können Sie das Nginx Pagespeed-Modul erstellen.

Nginx Pagespeed-Modul kompilieren

In diesem Schritt kompilieren Sie das Nginx Pagespeed-Modul. Am Ende erhalten Sie das Nginx-Modul im Format ‚.so ', die Sie auf Ihren aktuellen Nginx-Webserver anwenden können.

1. Ändern Sie das Arbeitsverzeichnis in das Nginx-Projektverzeichnis.

cd /usr/src/nginx/nginx-$NG_VER

2. Führen Sie den folgenden Befehl aus, um Ihre Nginx-Modulkompilierung zu konfigurieren. Dieser Befehl überprüft auch Ihre Systemanforderungen, stellen Sie sicher, dass Sie keine Fehler haben.

./configure --with-compat --add-dynamic-module=../incubator-pagespeed-ngx

Unten ist die Ausgabe, die Sie erhalten sollten.

Configuration summary
  + using system PCRE library
  + OpenSSL library is not used
  + using system zlib library

  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/nginx/sbin/nginx"
  nginx modules path: "/usr/local/nginx/modules"
  nginx configuration prefix: "/usr/local/nginx/conf"
  nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/nginx/logs/error.log"
  nginx http access log file: "/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

3. Als nächstes kompilieren Sie das Nginx Pagespeed-Modul mit dem folgenden Befehl.

make modules

Dieser Befehl wird je nach CPU und Arbeitsspeicher Ihres Systems einige Zeit in Anspruch nehmen.

4. Nachdem der Kompilierungsprozess abgeschlossen ist, ist Ihr Pagespeed-Modul als 'objs/ngx_pagespeed.so verfügbar '. Überprüfen Sie das Modul mit dem folgenden Befehl.

ls objs/ngx_pagespeed.so

Sie sollten das Nginx Pagespeed-Modul 'ngx_pagespeed.so erhalten ' wie unten.

-rwxr-xr-x 1 root root 19M Dec  8 21:44 objs/ngx_pagespeed.so

Hinzufügen des Pagespeed-Moduls zur aktuellen Nginx-Installation

In diesem Schritt implementieren Sie das Nginx Pagespeed-Modul in Ihre aktuelle Nginx-Installation. Kopieren Sie dazu das Pagespeed-Modul „ngx_pagespeed.so“ in das Nginx-Modulverzeichnis und fügen Sie eine neue Konfiguration hinzu, um es zu aktivieren.

1. Kopieren Sie das Modul 'ngx_pagespeed.so ' in das standardmäßige Nginx-Modulverzeichnis '/usr/share/nginx/modules '.

cp /usr/src/nginx/nginx-$NG_VER/objs/ngx_pagespeed.so /usr/share/nginx/modules

2. Erstellen Sie eine neue Konfigurationsdatei, um das Pagespeedd-Modul zu aktivieren.

nano /usr/share/nginx/modules-available/ngx-pagespeed.conf

Kopieren Sie die folgende Konfiguration und fügen Sie sie ein.

load_module modules/ngx_pagespeed.so;

Speichern Sie die Konfiguration und beenden Sie.

3. Aktivieren Sie das Pagespeed-Modul, indem Sie eine Symlink-Konfiguration 'ngx-pagespeed.conf erstellen ' in das Verzeichnis '/etc/nginx/modules-enabled/ '.

ln -s /usr/share/nginx/modules-available/ngx-pagespeed.conf /etc/nginx/modules-enabled/70-ngx-pagespeed.conf

4. Als nächstes erstellen Sie eine neue Konfiguration „pagespeed.conf“ auf der „/etc/nginx ' Verzeichnis.

nano /etc/nginx/pagespeed.conf

Kopieren Sie die folgende Konfiguration und fügen Sie sie ein.

pagespeed on;

# Needs to exist and be writable by nginx.  Use tmpfs for best performance.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# 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$" { }

Speichern Sie die Konfiguration und beenden Sie.

5. Erstellen Sie als Nächstes ein neues Verzeichnis zum Speichern des Nginx Pagespeed-Cache und stellen Sie sicher, dass das Verzeichnis von Nginx 'www-data beschreibbar ist ' Benutzer.

mkdir -p /var/ngx_pagespeed_cache
chown www-data:www-data /var/ngx_pagespeed_cache

Jetzt wird das Nginx Pagespeed-Modul zu Ihrer aktuellen Nginx-Installation hinzugefügt. Fahren Sie mit dem nächsten Schritt fort, um es auf Ihren virtuellen Hosts (Serverblöcken) zu aktivieren.

Hinzufügen des Nginx Pagespeed-Moduls auf Ihrem virtuellen Host

Um das Pagespeed-Modul für Ihren virtuellen Host zu aktivieren, fügen Sie die Konfiguration „pagespeed.conf“ hinzu in Ihre virtuelle Host-Konfigurationsdatei mit der Option 'include' hinzufügen.

1. Fügen Sie für dieses Beispiel das Pagespeed-Modul zum virtuellen Host 'default hinzu '. Bearbeiten Sie die Konfiguration '/etc/nginx/sites-available/default' Verwenden des Nano-Editors.

nano /etc/nginx/sites-available/default

Fügen Sie die Konfiguration „include /etc/nginx/pagespeed.conf;“ hinzu. innerhalb des Abschnitts 'server {...}' wie unten.

server {

  .....
  ....

  include /etc/nginx/pagespeed.conf;
}

Konfiguration speichern und beenden.

2. Überprüfen Sie Ihre Nginx-Konfiguration und stellen Sie sicher, dass Sie keine Fehler erhalten. Starten Sie danach den Nginx-Dienst neu, um eine neue Konfiguration anzuwenden.

nginx -t
sudo systemctl restart nginx

Verifizierung des Nginx Pagespeed-Moduls

Um die Installation und Implementierung des Nginx Pagespeed-Moduls zu überprüfen, können Sie den curl-Befehl verwenden, um die HTTP-Header Ihres Nginx-Webservers abzurufen, oder das Inspect-Element in Ihrem Webbrowser verwenden.

1. Führen Sie den folgenden Curl-Befehl aus, um die HTTP-Header Ihres Nginx-Webservers abzurufen.

curl -I https://domain.com/

Jetzt sollten Sie die Ausgabe wie unten erhalten. Der zusätzliche Header-Abschnitt 'X-Page-Speed ' bedeutet, dass das Nginx Pagespeed-Modul aktiviert ist.

HTTP/1.1 200 OK
Server: nginx/1.18.0
Content-Type: text/html
Connection: keep-alive
Date: Wed, 01 Dec 2021 22:02:52 GMT
X-Page-Speed: 1.13.35.2-0
Cache-Control: max-age=0, no-cache

2. Um dies von Ihrem Webbrowser aus zu überprüfen, besuchen Sie Ihren Domainnamen und klicken Sie mit der rechten Maustaste auf die Seite und wählen Sie dann „Prüfen“. ' Menü.

Laden Sie Ihre Webseite erneut und Sie sehen detaillierte HTTP-Header wie unten.

Schlussfolgerung

Glückwunsch! Sie haben gelernt, wie Sie das Nginx Pagespeed-Modul kompilieren und in die aktuelle Nginx-Installation implementieren. Sie müssen nur die Konfiguration 'pagespeed.conf' in Ihre virtuelle Hostkonfiguration aufnehmen.


Debian
  1. So installieren Sie Nginx mit Google PageSpeed ​​unter Ubuntu 20.04

  2. So erstellen Sie nginx mit dem Google PageSpeed-Modul unter Debian 8 (Jessie)

  3. So installieren Sie den Ghost unter Debian mit Nginx

  4. So installieren Sie DokuWiki auf Debian Wheezy mit Nginx

  5. So installieren Sie WonderCMS mit Nginx unter Debian 11

So installieren Sie Nginx Google Pagespeed unter Debian 11 Bullseye

So installieren Sie phpMyAdmin mit Nginx unter Debian 11

So installieren Sie das Nginx PageSpeed-Modul unter Debian 11

So installieren Sie Nginx mit PHP-FPM unter Debian 11

So installieren Sie Nginx mit dem Google PageSpeed-Modul unter Ubuntu 20.04 LTS

So richten Sie eine Firewall mit UFW unter Debian 11 ein