GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Nginx avec Google PageSpeed ​​sur Ubuntu 20.04

Nginx est un serveur Web gratuit et open source qui alimente de nombreux sites sur Internet. Il peut être utilisé comme proxy inverse et équilibreur de charge. Il est connu pour ses hautes performances et sa stabilité.

ngx_pagespeed est un module Nginx open source qui peut être utilisé pour optimiser les performances de votre site Web. Il est développé par Google et réduit le temps de chargement des pages et accélère le temps de réponse du site Web.

Dans ce tutoriel, nous allons vous montrer comment compiler ngx_pagespeed en tant que module dynamique avec Nginx sur le serveur Ubuntu 20.04.

Prérequis

  • Un serveur exécutant Ubuntu 20.04.
  • Un nom de domaine valide pointant vers l'IP de votre serveur. Dans ce didacticiel, nous utiliserons le domaine example.com.
  • Un mot de passe root est configuré sur le serveur.

Mise en route

Avant de commencer, vous devrez mettre à jour vos packages système vers la dernière version. Vous pouvez les mettre à jour en exécutant la commande suivante :

apt-get update -y

Une fois tous les packages installés, vous devrez installer certaines dépendances requises sur votre système. Vous pouvez tous les installer avec la commande suivante :

apt-get install dpkg-dev build-essential zlib1g-dev libpcre3 git libpcre3-dev unzip -y

Une fois tous les packages installés, vous pouvez passer à l'étape suivante.

Installer le serveur Web Nginx

Ensuite, vous devrez installer le serveur Web Nginx sur votre système. Vous pouvez l'installer avec la commande suivante :

apt-get install nginx -y

Une fois l'installation terminée, vous pouvez vérifier la version installée de Nginx avec la commande suivante :

nginx -v

Vous devriez voir la version Nginx dans la sortie suivante :

version de nginx :nginx/1.18.0 (Ubuntu)

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Télécharger et compiler ngx_pagespeed

Avant de télécharger et de compiler ngx_pagespeed. Vous devrez télécharger la source Nginx dans votre système. Vous pouvez télécharger le package source Nginx avec la commande suivante :

Remarque :Assurez-vous que la version Nginx téléchargée correspond à la version Nginx installée. Ici, la version installée de Nginx est 1.18.0. Vous devrez donc télécharger la source Nginx de la version 1.18.0 à partir du site Web de Nginx.

wget http://nginx.org/download/nginx-1.18.0.tar.gz

Une fois le téléchargement terminé, extrayez le fichier téléchargé avec la commande suivante :

tar -xvzf nginx-1.18.0.tar.gz

Ensuite, téléchargez la source ngx_pagespeed depuis le dépôt Git avec la commande suivante :

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

Une fois le téléchargement terminé, changez le répertoire vers le répertoire téléchargé et vérifiez la version stable avec la commande suivante :

cd incubator-pagespeed-ngx
git checkout latest-stable

Vous devriez obtenir le résultat suivant :

Remarque :passage à 'latest-stable'. Vous êtes dans l'état 'Head détaché'. Vous pouvez regarder autour de vous, apporter des modifications expérimentales et les valider, et vous pouvez supprimer tous les commits que vous faites dans cet état sans affecter les branches en revenant à une branche. Si vous souhaitez créer une nouvelle branche pour conserver les commits que vous créez, vous pouvez le faire ( maintenant ou plus tard) en utilisant -c avec la commande switch. Exemple :git switch -c Ou annulez cette opération avec :git switch -Désactivez ce conseil en réglant la variable de configuration advisor.dependentHead sur falseHEAD est maintenant à 11ba8ea54 Mettre à jour PSOL_BINARY_URL 

À partir de la sortie ci-dessus, cat le fichier "PSOL_BINARY_URL" pour voir l'URL de téléchargement PSOL :

chat PSOL_BINARY_URL

Vous devriez obtenir le résultat suivant :

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

Maintenant, exécutez la commande suivante pour télécharger PSOL en utilisant l'URL ci-dessus :

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

Ensuite, extrayez le fichier téléchargé avec la commande suivante :

tar -xvzf 1.13.35.2-x64.tar.gz

Ensuite, modifiez le répertoire vers la source Nginx et installez toutes les dépendances requises avec la commande suivante :

cd /root/nginx-1.18.0
apt-get build-dep nginx
apt-get install uuid-dev

Compilez ensuite le module ngx_pagespeed avec la commande suivante :

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

Vous devriez obtenir le résultat suivant :

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" nginx chemin des modules :"/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 des 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 requête du client http nginx :"client_body_temp" Fichiers temporaires du proxy http nginx :"temp_proxy" Fichiers temporaires fastcgi http nginx :"temp_fastcgi" Fichiers temporaires http uwsgi nginx :"temp_uwsgi" Fichiers temporaires scgi http nginx :"temp_scgi" 

Ensuite, exécutez la commande suivante pour créer le module Pagespeed :

faire des modules

Ensuite, copiez le module généré dans le répertoire des modules Nginx :

cp objs/ngx_pagespeed.so /usr/share/nginx/modules/

À ce stade, le module ngx_pagespeed est compilé dans votre système. Vous pouvez maintenant passer à l'étape suivante.

Configurer Nginx pour utiliser le module ngx_pagespeed

Ensuite, vous devrez configurer Nginx pour utiliser le module ngx_pagespeed. Tout d'abord, modifiez le fichier de configuration principal de Nginx et définissez le chemin du module ngx_pagespeed :

nano /etc/nginx/nginx.conf

Ajoutez la ligne suivante au début du fichier :

load_module modules/ngx_pagespeed.so ;

Enregistrez et fermez le fichier lorsque vous avez terminé.

Ensuite, créez un répertoire pour les caches pagespeed avec la commande suivante :

mkdir -p /var/ngx_pagespeed_cache

Définissez le propriétaire approprié à l'aide de la commande suivante :

chown -R www-data:www-data /var/ngx_pagespeed_cache

Ensuite, modifiez le fichier de configuration de l'hôte virtuel par défaut Nginx et ajoutez la configuration pagespeed :

nano /etc/nginx/sites-available/default

Remplacé toutes les lignes par les lignes suivantes :

serveur { écoute 80 ; nom_serveur exemple.com ; racine /var/www/html; index index.nginx-debian.html index.html index.htm ; access_log /var/log/nginx/access.log ; error_log /var/log/nginx/error.log; emplacement / { try_files $uri $uri/ =404; } vitesse de page activée ; pagespeed FileCachePath "/var/ngx_pagespeed_cache/" ; pagespeed RewriteLevel OptimizeForBandwidth ; emplacement ~ ".pagespeed.([a-z].) ?[a-z]{2}.[^.]{10}.[^.]+" { add_header "" "" ; } emplacement ~ "^/pagespeed_static/" { } emplacement ~ "^/ngx_pagespeed_beacon$" { }pagespeed RewriteLevel CoreFilters ; } 

Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, vérifiez Nginx pour toute erreur de syntaxe à l'aide de la commande suivante :

nginx -t

Vous devriez obtenir le résultat suivant :

nginx :la syntaxe du fichier de configuration /etc/nginx/nginx.conf est oknginx :le test du fichier de configuration /etc/nginx/nginx.conf est réussi

Enfin, redémarrez le service Nginx pour appliquer les modifications :

systemctl redémarrer nginx

Vous pouvez également vérifier l'état du service Nginx à l'aide de la commande suivante :

statut systemctl nginx

Vous devriez obtenir le résultat suivant :

 ? nginx.service - Un serveur Web hautes performances et un serveur proxy inverse Chargé :chargé (/lib/systemd/system/nginx.service ; activé ; préréglage du fournisseur :activé) Actif :actif (en cours d'exécution) depuis le jeu 2020-11-26 05 :32:23 UTC ; Il y a 20 s Docs :man:nginx(8) Processus :363 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on ; master_process activé ; (code=exited, status=0/SUCCESS) Processus :385 ExecStart=/usr/sbin/nginx -g daemon on ; master_process activé ; (code=exited, status=0/SUCCESS) PID principal :386 (nginx) Tâches :3 (limite :2353) Mémoire :14,4 M CGroup :/system.slice/nginx.service ??386 nginx :processus maître /usr/ sbin/nginx -g démon activé ; master_process activé ; ??387 nginx :processus de travail ??388 nginx :processus de travailNov 26 05:32:23 ubuntu2004 systemd[1] :Démarrage d'un serveur Web haute performance et d'un serveur proxy inverse...Nov 26 05:32:23 ubuntu2004 systemd[ 1] :Démarré Un serveur Web hautes performances et un serveur proxy inverse.

Une fois que vous avez terminé, vous pouvez passer à l'étape suivante.

Vérifier le module ngx_pagespeed

À ce stade, Nginx est configuré avec la prise en charge de ngx_pagespeed. Maintenant, il est temps de le tester, qu'il soit installé ou non.

Pour tester la pagespeed, lancez la commande suivante en précisant votre nom de domaine :

curl -I -p http://example.com

Si tout va bien, vous devriez obtenir le résultat suivant :

HTTP/1.1 200 OKServer :nginx/1.18.0 (Ubuntu)Content-Type :text/htmlConnection :keep-aliveVary :Accept-EncodingDate :Wed, 25 Nov 2020 11:58:56 GMTX-Page-Speed :1.13 .35.2-0Cache-Control :max-age=0, pas de cache

Dans la sortie ci-dessus, X-Page-Speed :1.13.35.2-0 signifie que PageSpeed ​​est actif et optimise votre site Web.

Conclusion

Toutes nos félicitations! vous avez installé avec succès ngx_pagespeed avec Nginx sur le serveur Ubuntu 20.04. J'espère que ce module augmentera les performances de votre serveur Web Nginx et accélérera le site Web. N'hésitez pas à me demander si vous avez des questions.


Ubuntu
  1. Comment installer WordPress avec Nginx sur Ubuntu 18.04

  2. Comment installer phpMyAdmin avec Nginx sur Ubuntu 18.04

  3. Comment installer MediaWiki avec Nginx sur Ubuntu 16.04

  4. Comment installer Grav CMS avec Nginx sur Ubuntu 16.04

  5. Comment installer SuiteCRM avec Nginx sur Ubuntu 16.04

Comment installer OSClass avec Nginx sur Ubuntu 20.04

Comment installer Nginx avec ModSecurity sur Ubuntu 15.04

Comment installer Nextcloud 13 sur Ubuntu 16.04 avec Nginx

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

Comment installer Bludit CMS avec NGINX sur Ubuntu 20.04

Comment installer Talkyard Forum avec Nginx sur Ubuntu 18.04