GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare e configurare Nginx dal sorgente su Linux

Prima di capire cos'è nginx, dovremmo sapere come pronunciare nginx.

Non è N G I N X. nginx è pronunciato come "Engine X".

nginx è una forma abbreviata dopo aver rimosso entrambe le e da "Engine X".

nginx è un server web open source simile ad Apache, ma molto leggero. nginx è sia server web che server proxy inverso.

Le seguenti sono alcune delle caratteristiche di nginx:

  • Offre file statici e di indice
  • Proxy inverso con memorizzazione nella cache
  • Supporta SSL
  • Semplice bilanciamento del carico con tolleranza agli errori
  • È possibile configurare sia il server virtuale basato sul nome che quello basato su IP
  • Autenticazione di base HTTP
  • Supporta il modulo di riscrittura
  • Supporta gzip, XSLT, SSI e filtri di ridimensionamento delle immagini
  • Sono supportate tutte le principali funzionalità del server proxy di posta
  • e molto altro ancora..

Questo fa parte di una serie in corso di articoli su nginx.

Iniziamo installando nginx e mettiamolo in funzione, che richiede solo 5 minuti.

1. Scarica nginx

Scarica nginx da qui o usa wget come mostrato di seguito. L'attuale versione stabile è nginx 1.0.5

cd
wget http://nginx.org/download/nginx-1.0.5.tar.gz
tar xvfz nginx-1.0.5.tar.gz
cd nginx-1.0.5

2. Installa nginx

Ci sono molte opzioni che puoi passare a ./configure. Per identificare l'elenco di tutte le opzioni di configurazione, procedi come segue.

./configure --help

Di seguito sono riportati alcuni dei moduli http abilitati automaticamente. Se hai bisogno di disabilitarli, dovresti passare “–without-http_[nome_modulo]” all'opzione ./configure. Ad esempio, per disabilitare "proxy_module", dovresti fare ./configure –without-http_proxy_module.

  • charset_module – Modulo del set di caratteri HTTP
  • gzip_module – Modulo HTTP gzip per la compressione
  • ssi_module – Moduli inclusi lato server
  • auth_basic_module – Moduli di autenticazione HTTP di base.
  • autoindex_module – Indice automatico
  • rewrite_module – Riscrittura HTTP che supporta le regole di riscrittura
  • modulo_proxy – Modulo proxy inverso HTTP
  • fastcgi_module – Supporto per fastcgi
  • memcached_module – Modulo memcached per nginx
  • ..

Di seguito sono riportati alcuni dei moduli httpd che non sono abilitati automaticamente. Se è necessario abilitarli, è necessario passare "–with-http_[nome_modulo]" all'opzione ./configure. Ad esempio, per abilitare SSL in nginx, dovresti fare “./configure –with-http_ssl_module”.

  • ssl_module – Supporto per il modulo Secure Socket Layer (SSL)
  • xslt_module – Supporto per il modulo XSLT (Extensible Stylesheet Language Transformations)
  • perl_module – Supporto per Perl
  • ..

Per cominciare, installa nginx con le opzioni di configurazione predefinite eseguendo ./configure come mostrato di seguito.

./configure
make
make install

Durante ./configure, potresti ricevere "./configure:errore:il modulo di riscrittura HTTP richiede la libreria PCRE". messaggio di errore sulla libreria PCRE mancante richiesta dal modulo di riscrittura http di nginx.

Per risolvere il problema, installa i pacchetti "pcre" e "pcre-devel" sul tuo Linux, oppure disabilita il modulo di riscrittura eseguendo "./configure –without-http_rewrite_module"

nginx verrà installato in /usr/local/nginx come mostrato dall'output ./configure.

Configuration summary
  + using system PCRE library
  + OpenSSL library is not used
  + md5: using system crypto library
  + sha1: using system crypto library
  + using system zlib library

  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/nginx/sbin/nginx"
  nginx configuration prefix: "/usr/local/nginx/conf"
  nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/nginx/logs/error.log"
  nginx http access log file: "/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

3. Modifica la porta di ascolto nginx predefinita

Nginx è configurato per l'ascolto per impostazione predefinita sulla porta 80. Se lo stai installando su una macchina a scopo di test, che ha già un server Apache in esecuzione, dovresti cambiare la porta di ascolto di nginx.

Simile al file httpd.conf di Apache, nginx ha il file nginx.conf che si trova in /usr/local/nginx/conf.

Nella sezione server di nginx.conf, cambia la porta 80 in 8081.

# vi /usr/local/nginx/conf/nginx.conf
    server {
        listen       8081;
        server_name  localhost;

4. Avvia il server Nginx

L'eseguibile nginx si trova nella directory /usr/local/nginx/sbin. Basta chiamare questo eseguibile per avviare il server nginx.

cd /usr/local/nginx/sbin
./nginx

Una volta avviato, vedrai il "processo principale" e il "processo di lavoro" di nginx se lo fai ps.

# ps -ef | grep -i nginx
root     18596 13:16 nginx: master process ./nginx
nobody   18597 13:16 nginx: worker process

Dopo aver avviato il server nginx, vai su http://your-ip-address/ (o http://your-ip-address:8081, se hai modificato la direttiva listen in nginx.conf), dovresti vedere l'impostazione predefinita nginx index.html, che dovrebbe dire "Benvenuto in nginx!"

5. Arresta il server Nginx

Per arrestare il server nginx, procedi come segue.

cd /usr/local/nginx/sbin
./nginx -s stop

Per visualizzare la versione corrente di nginx, procedi come segue:

# ./nginx -v
nginx: nginx version: nginx/1.0.5

Per eseguire il debug dei problemi, visualizza i file error.log e access.log che si trovano in /usr/local/nginx/logs

# ls /usr/local/nginx/logs/
access.log
error.log
nginx.pid

Linux
  1. Come installare un programma da Source su Linux

  2. Come installare e configurare EMC PowerPath su Linux

  3. Come compilare e installare software dal codice sorgente su Linux

  4. Come installare MongoDB dal sorgente (e usando YUM) su Linux

  5. Come installare TBB dal sorgente su Linux e farlo funzionare

Come installare e configurare AnyDesk su sistema Linux

Come installare e configurare Django su sistema Linux

Come installare e configurare PrestaShop su sistema Linux

Come installare e configurare Elasticsearch su sistema Linux

Come installare e configurare Slack su distribuzioni Linux

Come installare e configurare Perf nelle distribuzioni Linux