Nginx è un server HTTP e proxy inverso gratuito, ad alte prestazioni e open source. Può essere utilizzato come server Web autonomo e come proxy inverso per Apache e altri server Web. È un programma più flessibile e leggero di Apache HTTP Server, ecco perché alimenta alcuni dei più grandi siti su Internet. Nginx può gestire la maggiore quantità di connessione rispetto ad Apache e consumare memoria più piccola.
Qui a LinuxAPT, come parte dei nostri servizi di gestione del server, aiutiamo regolarmente i nostri clienti a eseguire query Nginx correlate.
In questo contesto, esamineremo i comandi Nginx più utilizzati.
Come installare Nginx Server su Linux?
Prima di eseguire questa procedura di installazione, assicurati di utilizzare un account utente abilitato sudo con qualsiasi distribuzione Linux come Ubuntu e CentOS e Debian.
Per iniziare, se vuoi installare Nginx, segui i comandi per diverse distribuzioni:
$ sudo yum install epel-release && yum install nginx #For CentOS/RHEL
$ sudo dnf install nginx #For Debian/Ubuntu
$ sudo apt install nginx #For Fedora
Come controllare la versione di Nginx?
Puoi controllare la versione installata di Nginx sul tuo sistema usando il comando seguente:
$ nginx -v
Mostrerà l'output come di seguito:
Output
nginx version: nginx/1.14.0 (Ubuntu)
Il comando sopra mostrerà solo il numero di versione. Se vuoi mostrare i dettagli di versione e configurazione, esegui il comando seguente:
$ 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
Come controllare la sintassi della configurazione di Nginx?
È consigliabile controllare la sintassi di configurazione di nginx dopo aver apportato modifiche al file di configurazione. Esegui il comando seguente per verificare:
$ sudo nginx -t
Verrà visualizzato l'output come di seguito:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Come avviare Nginx?
È molto semplice avviare il servizio nginx. Usa il comando seguente per avviarlo:
$ sudo systemctl start nginx
Se la configurazione di Nginx è corretta, verrà avviata e non visualizzerà alcun output. Se la tua distribuzione Linux non ha systemd, dovresti usare il comando seguente per avviare il servizio:
$ sudo service start nginx
Come abilitare il servizio Nginx?
Il comando Nginx start avvierà il servizio solo per un po'. Se non desideri avviare il servizio manualmente ogni volta, puoi abilitare l'avvio automatico all'avvio utilizzando il comando seguente:
$ sudo systemctl enable nginx
Come il comando precedente, se la tua distribuzione Linux non ha systemd, dovresti usare il comando seguente:
$ sudo service enable nginx
Come fermare Nginx?
Se hai l'esigenza di interrompere il servizio Nginx per qualsiasi motivo, puoi eseguire il comando seguente:
$ sudo systemctl stop nginx
Per il sistema non systemd eseguire il comando seguente:
$ sudo service nginx stop
Come riavviare Nginx?
L'opzione di riavvio è un modo rapido per arrestare e quindi avviare il server Nginx.
Di seguito è riportato il comando per eseguire un riavvio di Nginx per systemd e non systemd di conseguenza:
$ sudo systemctl restart nginx
$ sudo service restart nginx
Questo comando è usato più frequentemente per il servizio Nginx.
Come ricaricare Nginx?
Dopo aver apportato modifiche ai file di configurazione di Nginx, è necessario ricaricare il servizio Nginx. Caricherà la nuova configurazione e avvierà un nuovo processo e interromperà tutti i vecchi processi.
Per ricaricare Nginx, usa uno dei seguenti comandi:
$ sudo systemctl reload nginx
Esegui il comando seguente se non systemd disponibile sul sistema:
$ sudo service reload nginx
Come visualizzare lo stato del servizio Nginx?
Puoi controllare lo stato del servizio Nginx usando il comando di stato. Mostrerà le informazioni sullo stato di esecuzione del servizio.
Usa il comando seguente per controllare lo stato:
$ 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.