26.07.2023

Installation et configuration Nginx

Introduction

Nginx – est l'un des serveurs Web les plus populaires pour la publication de sites majeurs à fort trafic d'utilisateurs. De plus, c'est un utilitaire très confortable à la fois pour un serveur Web ou pour configurer un proxy inverse.

Dans notre instruction, nous allons parcourir:

Les préparatifs

Avant de pouvoir commencer à travailler, nous devons déployer un Debian/Ubuntu/CentOS serveur, configurez au minimum le système avec un nouvel utilisateur et configurez les droits d'utilisation de la commande sudo, en utilisant cette instruction.
Après cela, installons Nginx sur notre serveur.

Pose Nginx

Nginx est un package standard dans la plupart des dépôts de système d'exploitation. Si le serveur a été configuré récemment, mettons à jour les index des packages logiciels et installons Nginx emballage:

mise à jour apt
installer nginx -y

Avec la touche -y, vous êtes d'accord sur une installation automatique du paquet.

Configuration firewall

Après l'installation de Nginx paquet que vous devez configurer firewall pouvoir se connecter à Nginx extérieurement.
Regardons les utilitaires disponibles ajoutés à un firewall liste:

liste des applications ufw

Nous devons trouver ces lignes, que nous allons ajouter à l'avenir :

Nginx Complet – responsable des ports 80 (HTTP – normal et le trafic n'est pas crypté) et 443 (HTTPS - crypte le trafic à l'aide des protocoles TLS/SSL)
Nginx HTTP – normal et le trafic n'est pas crypté
Nginx HTTPS – le trafic est crypté via TLS/SSL
OuvertSSH – connexion à distance au serveur via le port 22

Tout d'abord, activons l'accès pour un port 80 :

ufw autoriser 'Nginx HTTP'

Vérifiez l'état de l'ajout de la règle dans firewall tu peux avec cette commande :

statut de ufw

En conséquence, nous pouvons voir une liste avec Nginx HTTP – Autoriser – Partout.

Vérification du serveur Web

Après l'installation d'un package, le système démarre automatiquement l'utilitaire, vous devez ajouter une connexion pour Nginx démarrage, après cela, au-delà du redémarrage du système, notre serveur Web sera automatiquement activé.
Statut de l'utilitaire que vous pouvez vérifier en utilisant :

service nginx statuts

Selon les résultats, nous pouvons nous assurer que le serveur Web est démarré avec succès. Après cela, nous devons vérifier sur notre système principal que Nginx est disponible. Ouvrez un navigateur et dans la barre d'adresse tapez l'adresse de votre serveur. Pour voir votre adresse, utilisez cette commande :

boucle ifconfig.me

Résultat - adresse que nous devons taper dans la barre d'adresse.
Après transition sur une page on peut voir ceci :

À cette étape, nous avons déjà installé et configuré Nginx. Et nous avons configuré l'accès au serveur Web à partir d'un hôte externe.

Nginx gestion des processus

Nginx la gestion des processus s'exécute à l'aide de certaines lignes de commande commençant par systemctl, le signe # - est une ligne commentée, et nous mettons des informations sur ce que le code y fait réellement :

Commencer nginx # démarrage nginx
Recharger nginx # si la configuration change et effectue un redémarrage sans déconnecter la connexion
recommencer nginx # redémarrage du service
Arrêtez nginx # service d'arrêt
désactiver nginx # désactiver le téléchargement automatique du système
permettre nginx # activer le téléchargement automatique du système

Nous venons de parcourir une commande utile pour travailler avec Nginx.

Configuration du bloc serveur (recommandé)

Utiliser Nginx permet d'utiliser une partie du bloc serveur du serveur Web. En fait, vous pouvez utiliser l'encapsulation des détails pour configurer et déployer plusieurs sites sur votre serveur.

Regardons serverspaceconfiguration du domaine .tm, vous devez acheter un domaine pour l'examiner Nginx travail d'essai.

In Nginx un bloc de serveur est activé et il traite la configuration à partir du répertoire /var/www/html. Cette variante est bonne pour un site déployé, mais empêchera le travail du serveur Web si vous allez déployer plus d'un site sur un serveur. La meilleure façon de résoudre ce problème consiste à séparer un site Web supplémentaire du répertoire principal.
Créons un nouveau répertoire avec la clé "-p" dans /var/www/ :

mkdir -p /var/www/serverspace.tm/html

Pour éviter les problèmes d'autorisation, à partir de l'application qui possède le répertoire racine du document de domaine et tous les fichiers du répertoire, utilisez Nginx ( www-données ):

sudo chown -R www-data : /var/www/serverspace.tm

Après cela dans /var/www/serverspaceLe répertoire .tm/html permet de créer un fichier avec index.html comme nom, apportons quelques modifications à l'aide de l'éditeur de texte que vous préférez et collez le morceau de code suivant dans le fichier.





Bienvenue dans un ServerSpace.tm


Avec succès! Ton domaine ServerSpace.tm fonctionne !

Enregistrez le fichier et quittez-le.

Exécutons la sortie avec une sauvegarde supplémentaire du fichier.
Si vous voulez Nginx pour traiter ce fichier, vous devez créer un fichier de configuration pour traiter le répertoire actuel. Au lieu de modifier le fichier de configuration par défaut, créons un nouveau fichier pour notre domaine dans /etc/nginxrépertoire /sites-disponibles/ :

vim /etc/nginx/sites-disponibles/serverspace.tm

Ajoutez cette configuration et le contenu de index.html sera traité :

serveur {
écoutez 80;
écouter [::]:80 ;

racine /var/www/serverspace.tm/html ;
index index.html index.htm index.nginx-debian.html ;

nom du serveur serverspace.tmwww.serverspace.tm ;

emplacement /
try_files $uri $uri/ =404;
}
}

Après cela, créons un lien symbolique du fichier dans le /etc/nginxrépertoire /sites-enabled/ vers Nginx à traiter, le serveur Web est démarré.

ln -s /etc/nginx/sites-disponibles/serverspace.tm /etc/nginx/sites activés

Le lien symbolique ressemble à une étiquette, dans le dossier principal sites-available, vous pouvez apporter des modifications au fichier de configuration et les modifications affecteront le fichier du répertoire sites-enabled.
Pour éviter les problèmes de mémoire cache dus à des noms de serveur supplémentaires, décommentez la ligne server_names_hash_buckets_size 64 dans le fichier /etc/nginx/nginx.conf :

vim /etc/nginx/nginx.conf
http {

server_names_hash_buckets_size 64 ;

}

Enregistrez le fichier et connectez-vous.
Vérifiez l'exactitude de la configuration via :

nginx -t

Si aucune erreur ne se produit, redémarrons Nginx traiter et taper dans la barre de recherche :

http://serverspace.tm

Comme résultat, nous aurons cette page :

 

Conclusion

Dans notre instruction, nous avons parcouru :