Nginx est un serveur proxy HTTP et inverse gratuit, haute performance et open-source. Il peut être utilisé comme serveur Web autonome et comme proxy inverse pour Apache et d'autres serveurs Web. C'est un programme plus flexible et léger qu'Apache HTTP Server, c'est pourquoi il alimente certains des plus grands sites sur Internet. Nginx peut gérer un plus grand nombre de connexions qu'Apache et consommer moins de mémoire.
Chez LinuxAPT, dans le cadre de nos services de gestion de serveur, nous aidons régulièrement nos clients à effectuer des requêtes Nginx associées.
Dans ce cadre, nous allons nous intéresser aux commandes Nginx les plus utilisées.
Comment installer le serveur Nginx sur Linux ?
Avant d'effectuer cette procédure d'installation, assurez-vous que vous utilisez un compte d'utilisateur activé sudo avec n'importe quelle distribution Linux telle qu'Ubuntu, CentOS et Debian.
Pour commencer, si vous souhaitez installer Nginx, suivez les commandes pour différentes distributions :
$ sudo yum install epel-release && yum install nginx #For CentOS/RHEL
$ sudo dnf install nginx #For Debian/Ubuntu
$ sudo apt install nginx #For Fedora
Comment vérifier la version de Nginx ?
Vous pouvez vérifier la version installée de Nginx sur votre système en utilisant la commande ci-dessous :
$ nginx -v
Il affichera la sortie comme ci-dessous :
Output
nginx version: nginx/1.14.0 (Ubuntu)
La commande ci-dessus n'affichera que le numéro de version. Si vous souhaitez afficher les détails de la version et de la configuration, exécutez la commande ci-dessous :
$ nginx -V
Output
nginx version: nginx/1.14.0 (Ubuntu)
built with OpenSSL 1.1.0g 2 Nov 2017 (running with OpenSSL 1.1.1b 26 Feb 2019)
TLS SNI support enabled
configure arguments: --with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-FIJPpj/nginx-1.14.0=. -fstack-protector-strong -Wformat -Werror=format-security -fPIC -Wdate-time -D_FORTIFY_SOURCE=2' --with-ld-opt='-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -fPIC' --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --lock-path=/var/lock/nginx.lock --pid-path=/run/nginx.pid --modules-path=/usr/lib/nginx/modules --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --with-debug --with-pcre-jit --with-http_ssl_module --with-http_stub_status_module --with-http_realip_module --with-http_auth_request_module --with-http_v2_module --with-http_dav_module --with-http_slice_module --with-threads --with-http_addition_module --with-http_geoip_module=dynamic --with-http_gunzip_module --with-http_gzip_static_module --with-http_image_filter_module=dynamic --with-http_sub_module --with-http_xslt_module=dynamic --with-stream=dynamic --with-stream_ssl_module --with-mail=dynamic --with-mail_ssl_module
Comment vérifier la syntaxe de configuration Nginx ?
Il est recommandé de vérifier la syntaxe de configuration de nginx lorsque vous avez apporté des modifications au fichier de configuration. Exécutez la commande ci-dessous pour vérifier :
$ sudo nginx -t
Il affichera la sortie comme ci-dessous :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Comment démarrer Nginx ?
C'est un service nginx très simple à démarrer. Utilisez la commande ci-dessous pour le démarrer :
$ sudo systemctl start nginx
Si votre configuration Nginx est correcte, elle démarrera et n'affichera aucune sortie. Si votre distribution Linux n'a pas systemd, vous devez utiliser la commande ci-dessous pour démarrer le service :
$ sudo service start nginx
Comment activer le service Nginx ?
La commande de démarrage Nginx ne démarrera le service que pendant un certain temps. Si vous ne souhaitez pas démarrer le service manuellement à chaque fois, vous pouvez activer le démarrage automatique au démarrage à l'aide de la commande ci-dessous :
$ sudo systemctl enable nginx
Identique à la commande ci-dessus, si votre distribution Linux n'a pas systemd, vous devez utiliser la commande ci-dessous :
$ sudo service enable nginx
Comment arrêter Nginx ?
Si vous devez arrêter le service Nginx pour une raison quelconque, vous pouvez exécuter la commande ci-dessous :
$ sudo systemctl stop nginx
Pour les systèmes non systemd, exécutez la commande ci-dessous :
$ sudo service nginx stop
Comment redémarrer Nginx ?
L'option de redémarrage est un moyen rapide d'arrêter puis de démarrer le serveur Nginx.
Voici la commande pour effectuer un redémarrage Nginx pour systemd et non systemd en conséquence :
$ sudo systemctl restart nginx
$ sudo service restart nginx
Cette commande est la plus fréquemment utilisée pour le service Nginx.
Comment recharger Nginx ?
Lorsque vous avez apporté des modifications aux fichiers de configuration Nginx, vous devez recharger le service Nginx. Il chargera une nouvelle configuration, démarrera un nouveau processus et arrêtera tous les anciens processus.
Pour recharger Nginx, utilisez l'une des commandes suivantes :
$ sudo systemctl reload nginx
Exécutez la commande ci-dessous si systemd n'est pas disponible sur le système :
$ sudo service reload nginx
Comment afficher l'état du service Nginx ?
Vous pouvez vérifier l'état du service Nginx à l'aide de la commande status. Il affichera les informations d'état d'exécution sur le service.
Utilisez la commande ci-dessous pour vérifier l'état :
$ sudo systemctl status nginx #systemd
Output
● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Mon 2019-04-29 04:57:52 UTC; 1 weeks 0 days ago
Docs: man:nginx(8)
Main PID: 9561 (nginx)
Tasks: 2 (limit: 1152)
CGroup: /system.slice/nginx.service
├─9561 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
└─9564 nginx: worker process
Apr 29 04:57:51 ibmimedia.com systemd[1]: Stopped A high performance web server and a reverse proxy server.
Apr 29 04:57:51 ibmimedia.com systemd[1]: Starting A high performance web server and a reverse proxy server…
Apr 29 04:57:52 ibmimedia.com systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Apr 29 04:57:52 ibmimedia.com systemd[1]: Started A high performance web server and a reverse proxy server.