Ricerca nel sito web

Come configurare Nginx come proxy inverso per Apache su Debian 11


Su questa pagina

  1. Prerequisiti
  2. Per iniziare
  3. Installa e configura Apache
  4. Installa e configura Nginx
  5. Verifica il server Web Nginx
  6. Conclusione

Nginx e Apache sono entrambi server Web gratuiti, open source e più popolari in tutto il mondo. Apache è noto per la sua potenza mentre Nginx è noto per la sua velocità. Entrambi hanno alcuni pro e contro. Nginx è utile per i contenuti statici mentre Apache è per i contenuti dinamici. Se uniamo entrambi i server, otterremo un risultato migliore l'uno dall'altro.

In questo tutorial, configurerò Apache come server back-end e utilizzerò Nginx come proxy inverso per Apache su Debian 11.

Prerequisiti

  • Un server che esegue Debian 11.
  • Sul server è configurata una password di root.

Iniziare

Prima di iniziare, si consiglia di aggiornare la cache dei pacchetti di sistema all'ultima versione. Puoi aggiornarlo usando il seguente comando:

apt-get update -y

Dopo aver aggiornato la cache dei pacchetti, installa le altre dipendenze richieste utilizzando il seguente comando:

apt-get install gnupg2 curl -y

Una volta installate tutte le dipendenze richieste, puoi procedere al passaggio successivo.

Installa e configura Apache

In questa sezione, installeremo il server web Apache e lo configureremo per funzionare sulla porta 8000.

Innanzitutto, installa il server Web Apache utilizzando il seguente comando:

apt-get install apache2 -y

Una volta installato Apache, modifica il file di configurazione della porta Apache:

nano /etc/apache2/ports.conf

Cambia la porta predefinita di Apache da 80 a 8000:

Listen 8000

Salva e chiudi il file, quindi modifica il file di configurazione predefinito di Apache:

nano /etc/apache2/sites-enabled/000-default.conf

Modificare la porta predefinita da 80 a 8000 come mostrato di seguito:

<VirtualHost *:8000>

Salva e chiudi il file, quindi ricarica il servizio Apache per applicare le modifiche:

systemctl restart apache2

Ora, apri il tuo browser web e accedi alla pagina di test di Apache utilizzando l'URL http://your-server-ip:8000. Dovresti vedere la pagina di test predefinita di Apache nella schermata seguente:

Installa e configura Nginx

Ora installeremo e configureremo Nginx come proxy inverso per passare le richieste in arrivo al server Apache.

Innanzitutto, installa Nginx con il seguente comando:

apt-get install nginx -y

Una volta installato Nginx, modifica il file di configurazione dell'host virtuale predefinito di Nginx con il seguente comando:

nano /etc/nginx/sites-enabled/default

Rimuovi tutte le righe e aggiungi le seguenti righe:

server {

listen 80;
index index.php index.html index.htm;

server_name your-server-ip;
                
location / {
proxy_pass http://localhost:8000;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

Salva e chiudi il file, quindi verifica Nginx per eventuali errori di sintassi con il seguente comando:

nginx -t

Successivamente, ricarica il servizio Nginx per applicare le modifiche:

systemctl restart nginx

Verifica il server Web Nginx

A questo punto, Nginx è installato e configurato per passare tutte le richieste al server backend Apache. Ora puoi aprire il tuo browser web e digitare l'URL http://your-server-ip. Dovresti vedere la pagina predefinita del server web Apache nella seguente schermata:

Conclusione

Congratulazioni! hai installato e configurato correttamente Nginx come proxy inverso per Apache. Ora puoi utilizzare questa configurazione nell'ambiente di produzione per velocizzare le prestazioni del tuo sito web.