Come creare NGINX dal sorgente su Debian 12, 11 o 10

Costruire NGINX dal sorgente su Debian 12, 11 o 10 offre numerosi vantaggi e potenziali svantaggi. La compilazione dal sorgente ti consente di personalizzare NGINX con moduli specifici e ottimizzazioni su misura per le tue esigenze, fornendo un maggiore controllo sul processo di compilazione. Questo metodo può anche garantire di disporre delle funzionalità e delle patch di sicurezza più recenti prima che siano disponibili nei repository ufficiali.

Tuttavia, ci sono alcuni potenziali svantaggi da considerare. Compilare dal codice sorgente richiede più tempo e impegno rispetto all'installazione di pacchetti precompilati. Richiede inoltre una buona conoscenza del processo di compilazione e delle dipendenze. Inoltre, la gestione degli aggiornamenti può essere più complessa, poiché è necessario ricompilare manualmente NGINX per ogni nuova versione.

Questa guida dimostrerà come creare NGINX dal sorgente su Debian 12, 11 o 10, coprendo i passaggi e i comandi necessari per garantire un'installazione corretta.

Passaggio 1: aggiorna e aggiorna Debian

Prima di iniziare l'installazione, aggiorna il tuo sistema Debian. Usa questi comandi nel terminale:

sudo apt update
sudo apt upgrade

Questi comandi recupereranno l'elenco degli aggiornamenti disponibili e quindi aggiorneranno il tuo sistema, assicurandoti di lavorare con il software più recente.

Passaggio 2: installare le dipendenze richieste

Installa i pacchetti iniziali richiesti per compilare Nginx con il seguente comando:

sudo apt install build-essential libpcre3-dev libssl-dev zlib1g-dev libgd-dev

Passaggio 3: scarica il codice sorgente NGINX

Una volta installate le dipendenze necessarie, il passaggio successivo è scaricare il codice sorgente NGINX. Visitare il Sito web NGINX e scegli la versione più adatta alle tue esigenze. Puoi optare per l'ultima versione principale, stabile o altra versione.

Utilizza il comando wget per scaricare la versione scelta:

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

Sostituisci xxx con il numero di versione. Ad esempio, per scaricare l'ultima versione principale, 1.25.1, utilizzare quanto segue:

wget https://nginx.org/download/nginx-1.25.1.tar.gz

Nota: non copiare il comando precedente; Questo è solo un esempio. Assicurati di prendere l'ultimo collegamento per il download stabile o principale.

Passaggio 4: estrarre il codice sorgente

Il codice sorgente è disponibile in un file tar compresso. Estrailo usando questo comando:

tar -xzvf nginx-1.25.1.tar.gz

Quindi, vai alla directory appena estratta:

cd nginx-1.25.1

Passaggio 5: configura le opzioni NGINX

Per questo passaggio, configura le opzioni NGINX dall'origine. Ciò significa scegliere i percorsi e i moduli per la tua build NGINX. Usa questo comando:

./configure --prefix=/var/www/html --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/nginx/access.log --error-log-path=/var/log/nginx/error.log --with-pcre  --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-http_ssl_module --with-http_image_filter_module=dynamic --modules-path=/etc/nginx/modules --with-http_v2_module --with-http_v3_module --with-stream=dynamic --with-http_addition_module --with-http_mp4_module

Ecco cosa significano le opzioni:

  • –prefix=/var/www/html: imposta la directory root per l'installazione.
  • –sbin-path=/usr/sbin/nginx: imposta dove va il programma nginx.
  • –conf-path=/etc/nginx/nginx.conf: sceglie il percorso principale del file di configurazione NGINX.
  • –http-log-path=/var/log/nginx/access.log e –error-log-path=/var/log/nginx/error.log: definiscono dove si trovano i file di registro.
  • –with-pcre: attiva PCRE (espressioni regolari compatibili con Perl) per i file di configurazione.
  • –lock-path=/var/lock/nginx.lock e –pid-path=/var/run/nginx.pid: imposta le posizioni per i file lock e pid.
  • –with-http_ssl_module: attiva il modulo SSL per connessioni Web sicure.
  • –with-http_image_filter_module=dynamic: attiva il modulo del filtro immagine.
  • –modules-path=/etc/nginx/modules: definisce dove vanno i moduli dinamici.
  • –with-http_v2_module: attiva il modulo HTTP/2.
  • –with-stream=dynamic: attiva dinamicamente il modulo stream.
  • –with-http_addition_module e –with-http_mp4_module: attiva i moduli aggiuntivi e MP4.

Se non vuoi utilizzare il modulo HTTP/3, lascia fuori –with-http_v3_module. HTTP/3 offre una navigazione web più veloce e affidabile.

Passaggio 6: installare NGINX (compilare e creare NGINX)

Dopo aver configurato le opzioni per creare NGINX dal sorgente, è il momento di compilare e installare NGINX. Si tratta di un processo in due fasi:

Prima il make Il comando compila il codice sorgente NGINX utilizzando le opzioni specificate nel file ./configure sceneggiatura. Questo crea l'eseguibile binario NGINX:

make

In secondo luogo, il sudo make install Il comando installa il binario NGINX, i file di configurazione e altri file nel percorso del prefisso specificato nel file ./configure sceneggiatura:

sudo make install

Dopo l'installazione, NGINX si troverà nel file sbin directory del percorso del prefisso.

Passaggio 7: crea il servizio NGINX Systemd

Dopo aver creato e compilato NGINX dal sorgente, è fondamentale creare un processo systemd per gestire il servizio NGINX sul tuo sistema. Ecco come:

Crea un nuovo file di servizio systemd:

sudo nano /etc/systemd/system/nginx.service

Aggiungi il seguente contenuto al file:

[Unit]
Description=The NGINX HTTP and reverse proxy server
After=syslog.target network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
PIDFile=/var/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

Ricaricare il demone systemd:

sudo systemctl daemon-reload

Avvia il servizio NGINX:

sudo systemctl start nginx

Abilita l'avvio automatico del servizio NGINX all'avvio:

sudo systemctl enable nginx

Infine, assicurati che il servizio sia attivato:

systemctl status nginx

Passaggio 8: testare NGINX

Per verificare che NGINX funzioni correttamente, apri un browser Web e vai alla pagina di test utilizzando l'indirizzo IP dell'host locale o del server:

http://localhost

Oppure sostituire localhost con l'indirizzo IP del tuo server.

Comandi e suggerimenti aggiuntivi

Compila NGINX con moduli aggiuntivi

Puoi migliorare le funzionalità di NGINX compilandolo con moduli aggiuntivi. Ad esempio, per utilizzare il modulo push HTTP Nginx, utilizzare il flag –add-module durante la configurazione di NGINX:

./configure --add-module=/path/to/nginx-http-push-module
make
sudo make install

Conclusione

Seguendo questi passaggi, puoi creare e installare con successo NGINX dal sorgente sul tuo sistema Debian. Questo approccio ti offre maggiore flessibilità e controllo sulla tua installazione NGINX, permettendoti di adattarla alle tue esigenze specifiche. Controlla regolarmente la presenza di aggiornamenti e ricompila secondo necessità per mantenere la sicurezza e le prestazioni. Goditi le funzionalità avanzate e le opzioni di personalizzazione offerte dalla creazione di NGINX dal codice sorgente.

Joshua James
Seguimi
Ultimi post di Joshua James (vedi tutto)

Lascia un commento