GNU/Linux >> Tutoriels Linux >  >> Debian

Comment configurer Nginx avec le module Google Pagespeed sur Debian 11

Google Pagespeed Module est un module open-source pour optimiser vos sites Web sous le serveur Web Nginx et Apache. Le module Pagespeed est un module au niveau du serveur installé avec le serveur Web Nginx et Apache.

Le module Pagespeed améliore les performances et la vitesse de votre site Web en optimisant les fichiers statiques sur vos sites Web. Le module Pagespeed optimise les images sur vos sites Web, minimise les fichiers statiques tels que HTML, CSS et JavaScript, et optimise la mise en cache des fichiers.

Dans ce tutoriel, nous allons vous montrer comment construire le module Nginx Pagespeed sur la dernière Debian 11 Bullseye. Ce guide peut être appliqué au courant de votre installation Nginx car vous venez de construire le module Nginx.

Prérequis

Avant de commencer, assurez-vous d'avoir les exigences suivantes.

  • Système d'exploitation :Debian 11 Bullseye
  • Privilèges root

Commençons maintenant.

Installation des dépendances de packages

Tout d'abord, vous allez installer les dépendances des packages pour compiler le module Nginx.

1. Exécutez la commande apt ci-dessous pour mettre à jour les dépôts actuels sur votre système.

mise à jour sudo apt

2. Ensuite, installez les dépendances des packages de base pour compiler des programmes à l'aide de apt commande ci-dessous.

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

3. Après cela, installez les dépendances de construction pour compiler le module Nginx.

sudo apt build-dep nginx -y

Vérification de la version actuelle de Nginx

Pour créer un module Nginx Pagespeed personnalisé, assurez-vous que votre serveur Web Nginx actuel conserve la même version du code source Nginx que vous utiliserez pour créer le module Nginx.

1. Exécutez la commande suivante pour vérifier la version de Nginx.

nginx -v

Pour cet exemple, la version actuelle de Nginx installée sur notre machine est '1.18.0 '. Vous trouverez ci-dessous la sortie similaire que vous verrez.

version de nginx :nginx/1.18.0

Si vous n'avez pas le package Nginx sur votre système, installez-le à partir du référentiel Debian officiel à l'aide de la commande apt ci-dessous.

sudo apt install nginx -y

2. Ensuite, créez une nouvelle variable d'environnement temporaire pour votre version Nginx à l'aide de la commande ci-dessous.

exporter NG_VER=1.18.0

Télécharger le code source Nginx et Pagespeed

Dans cette étape, vous téléchargerez le code source Nginx et le module Pagespeed sur votre serveur. Ce code source Nginx aura la même version que votre package Nginx actuel.

1. Créez un nouveau répertoire de projet '/usr/src/nginx ' et allez-y.

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

2. Maintenant, exécutez la commande suivante pour télécharger le code source Nginx à l'aide et l'extraire.

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

3. Ensuite, clonez le module Nginx Pagespeed dans le répertoire actuel, et une fois le processus terminé, vous verrez un nouveau répertoire 'incubator-pagespeed-ngx'.

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

4. Déplacez-vous vers 'incubator-pagespeed-ngx ' et basculez vers la branche stable du module Nginx Pagespeed.

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

5. Vérifiez le fichier 'PSOL_BINARY_URL ' pour obtenir le lien de téléchargement de la bibliothèque d'optimisation de page (PSOL). Cette bibliothèque est requise pour le module Nginx Pagespeed.

chat PSOL_BINARY_URL

Vous verrez une sortie similaire à celle ci-dessous. La variable '$BIT_SIZE_NAME ' est l'architecture de votre serveur.

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

6. Créez maintenant une nouvelle variable d'environnement temporaire 'BIT_SIZE_NAME' avec la valeur de votre architecture de serveur. L'exemple ci-dessous utilise une architecture de serveur 'x64' ou 64 bits.

exporter BIT_SIZE_NAME=x64

7. Téléchargez maintenant le code source PSOL et extrayez-le.

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

Vous êtes maintenant prêt à créer le module Nginx Pagespeed.

Compilation du module Nginx Pagespeed

Dans cette étape, vous allez compiler le module Nginx Pagespeed. Au final, vous obtiendrez le module Nginx au format '.so ' que vous pouvez appliquer à votre serveur Web Nginx actuel.

1. Remplacez le répertoire de travail par le répertoire du projet Nginx.

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

2. Exécutez la commande suivante pour configurer la compilation de votre module Nginx. Cette commande vérifie également la configuration système requise, assurez-vous de ne pas avoir d'erreurs.

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

Vous trouverez ci-dessous le résultat que vous devriez obtenir.

Résumé de la configuration
  + Utilisation de la bibliothèque système PCRE
  + La bibliothèque OpenSSL n'est pas utilisée
  + Utilisation de la bibliothèque système zlib

  Préfixe du chemin nginx :"/usr/local /nginx"
  Fichier binaire nginx :"/usr/local/nginx/sbin/nginx"
  Chemin des modules nginx :"/usr/local/nginx/modules"
  Préfixe de configuration nginx :" /usr/local/nginx/conf"
  fichier de configuration nginx :"/usr/local/nginx/conf/nginx.conf"
  fichier pid nginx :"/usr/local/nginx/logs/nginx .pid"
  Fichier journal d'erreurs nginx :"/usr/local/nginx/logs/error.log"
  Fichier journal d'accès http nginx :"/usr/local/nginx/logs/access.log"
  Fichiers temporaires du corps de la demande du client http nginx :"client_body_temp"
  Fichiers temporaires du proxy http nginx :"proxy_temp"
  Fichiers temporaires fastcgi http nginx :"fastcgi_temp"
  Fichiers temporaires uwsgi http nginx :"uwsgi_temp"
  nginx http scgi fichiers temporaires :"scgi_temp"

3. Ensuite, compilez le module Nginx Pagespeed à l'aide de la commande suivante.

faire des modules

Cette commande prendra un certain temps, en fonction des processeurs et de la mémoire de votre système.

4. Une fois le processus de compilation terminé, votre module Pagespeed est disponible en tant que 'objs/ngx_pagespeed.so '. Vérifiez le module à l'aide de la commande suivante.

ls objs/ngx_pagespeed.so

Vous devriez obtenir le module Nginx Pagespeed 'ngx_pagespeed.so ' comme ci-dessous.

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

Ajout du module Pagespeed à l'installation actuelle de Nginx

Dans cette étape, vous implémenterez le module Nginx Pagespeed dans votre installation Nginx actuelle. Pour ce faire, copiez le module Pagespeed 'ngx_pagespeed.so' dans le répertoire du module Nginx et ajoutez une nouvelle configuration pour l'activer.

1. Copiez le module 'ngx_pagespeed.so ' dans le répertoire par défaut du module Nginx '/usr/share/nginx/modules '.

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

2. Créez un nouveau fichier de configuration pour activer le module Pagespeedd.

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

Copiez et collez la configuration suivante.

load_module modules/ngx_pagespeed.so ;

Enregistrez la configuration et quittez.

3. Activez le module Pagespeed en créant une configuration de lien symbolique 'ngx-pagespeed.conf ' dans le répertoire '/etc/nginx/modules-enabled/ '.

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

4. Ensuite, créez une nouvelle configuration 'pagespeed.conf' sur le '/etc/nginx ' répertoire.

nano /etc/nginx/pagespeed.conf

Copiez et collez la configuration suivante.

pagespeed activé ;

# Doit exister et être accessible en écriture par nginx. Utilisez tmpfs pour de meilleures performances.
pagespeed FileCachePath /var/ngx_pagespeed_cache;

# Assurez-vous que les demandes de ressources optimisées pour la vitesse de page vont au gestionnaire de vitesse de page
# et qu'aucun en-tête superflu n'est défini.
emplacement ~ "\.pagespeed\.([a-z]\.) ?[a-z]{2}\.[^.]{10}\.[^.]+" {
  add_header "" "";
}
emplacement ~ "^/pagespeed_static/" { }
emplacement ~ "^/ngx_pagespeed_beacon$" { }

Enregistrez la configuration et quittez.

5. Ensuite, créez un nouveau répertoire pour stocker le cache Nginx Pagespeed et assurez-vous que le répertoire est accessible en écriture par le Nginx 'www-data ' utilisateur.

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

Le module Nginx Pagespeed est maintenant ajouté à votre installation Nginx actuelle. Passez à l'étape suivante pour l'activer sur vos hôtes virtuels (blocs de serveurs).

Ajout du module Nginx Pagespeed sur votre hôte virtuel

Pour activer le module Pagespeed sur votre hôte virtuel, ajoutez la configuration 'pagespeed.conf' au fichier de configuration de votre hôte virtuel à l'aide de l'option 'include'.

1. Pour cet exemple, ajoutez activer le module Pagespeed à l'hôte virtuel 'default '. Modifiez la configuration '/etc/nginx/sites-available/default' en utilisant l'éditeur nano.

nano /etc/nginx/sites-available/default

Ajoutez la configuration 'include /etc/nginx/pagespeed.conf;' dans la section 'server {...}' comme ci-dessous.

serveur {

  .....
  ....

 incluez /etc/nginx/pagespeed.conf;
}

enregistrez la configuration et quittez.

2. Vérifiez votre configuration Nginx et assurez-vous que vous n'obtenez aucune erreur. Après cela, redémarrez le service Nginx pour appliquer une nouvelle configuration.

nginx -t
sudo systemctl redémarrer nginx

Vérification du module Nginx Pagespeed

Pour vérifier l'installation et la mise en œuvre du module Nginx Pagespeed, vous pouvez utiliser la commande curl pour obtenir les en-têtes HTTP de votre serveur Web Nginx ou utiliser l'élément Inspect de votre navigateur Web.

1. Exécutez la commande curl ci-dessous pour obtenir les en-têtes HTTP de votre serveur Web Nginx.

curl -I https://domain.com/

Vous devriez maintenant obtenir la sortie comme ci-dessous. La section d'en-tête supplémentaire 'X-Page-Speed ' signifie que le module Nginx Pagespeed est activé.

HTTP/1.1 200 OK
Serveur :nginx/1.18.0
Type de contenu :text/html
Connexion :keep-alive
Date : mer 01 décembre 2021 22:02:52 GMT
X-Page-Speed :1.13.35.2-0
Cache-Control :max-age=0, no-cache

2. Pour vérifier à partir de votre navigateur Web, visitez votre nom de domaine et faites un clic droit sur la page, puis sélectionnez "Inspecter '.

Rechargez à nouveau votre page Web et vous verrez des en-têtes HTTP détaillés comme ci-dessous.

Conclusion

Félicitations ! Vous avez appris à compiler le module Nginx Pagespeed et à l'implémenter dans l'installation actuelle de Nginx. Il vous suffit d'inclure la configuration 'pagespeed.conf' dans la configuration de votre hôte virtuel.


Debian
  1. Comment installer Nginx avec Google PageSpeed ​​sur Ubuntu 20.04

  2. Comment construire nginx avec le module Google PageSpeed ​​sur Debian 8 (Jessie)

  3. Comment installer Ghost sur Debian avec Nginx

  4. Comment installer DokuWiki sur Debian Wheezy avec Nginx

  5. Comment installer WonderCMS avec Nginx sur Debian 11

Comment installer Nginx Google Pagespeed sur Debian 11 Bullseye

Comment installer phpMyAdmin avec Nginx sur Debian 11

Comment installer le module Nginx PageSpeed ​​sur Debian 11

Comment installer Nginx avec PHP-FPM sur Debian 11

Comment installer Nginx avec le module Google PageSpeed ​​sur Ubuntu 20.04 LTS

Comment configurer un pare-feu avec UFW sur Debian 11