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.