Perché usare un reindirizzamento
Utilizzi un reindirizzamento ogni volta che il proprietario di un sito web desidera che un indirizzo venga reindirizzato a un altro indirizzo, in genere reindirizzando da HTTP a HTTP o reindirizzando un dominio a un altro dominio.
Scenario da HTTP a HTTPS:
Vuoi che i tuoi clienti raggiungano il tuo sito sicuro (SSL) anche se digitano http://yourwebsite.com
o yourwebsite.com
nel loro browser. Questo tipo di reindirizzamento realizza proprio questo. Ad esempio, se il tuo cliente digita http://yourwebsite.com
,il reindirizzamento in Nginx® reindirizza la richiesta a https://yourwebsite.com .
Un dominio a un altro scenario:
Possiedi tuositoweb.com , iltuositoweb.org e tuositoweb.net e vuoi che i tuoi clienti arrivino a tuositoweb.com indipendentemente dall'URL che hanno inserito nel browser per visitare il tuo sito.
Come reindirizzare in Nginx
Le sezioni seguenti descrivono come reindirizzare da HTTP a HTTPS e da un dominio a un altro dominio.
HTTP su HTTPS
Quando installi un certificato SSL sul tuo server, hai due blocchi server per il tuo sito web:uno ciascuno per HTTP e HTTPS. Il problema è che hai bisogno di un modo per forzare il traffico verso il tuo sito protetto da SSL (la versione HTTPS). Puoi farlo aggiungendo un reindirizzamento al blocco del server Nginx per il tuo sito web.
Apri il file di configurazione per il tuo dominio. Il nome del file dovrebbe essere simile a/etc/nginx/vhost.d/yourwebsite.com.conf . Il .conf indica il file di configurazione per il tuo dominio. Apri il file con il tuo editor di testo preferito. L'esempio seguente usa vim
editore:
vim /etc/nginx/vhost.d/yourdomain.com.conf
Your server block will look similar to this:
server {
listen 80;
server_name yourwebsite.com www.yourwebsite.com;
}
A seconda della tua configurazione particolare, questo potrebbe contenere più informazioni rispetto all'esempio precedente, ma questo è un semplice esempio incentrato sull'opzione di reindirizzamento.
Tuttavia, desideri che i tuoi clienti accedano alla versione protetta di tuositoweb.com , quindi è necessario aggiungere un reindirizzamento al blocco del server nel file di configurazione. Per farlo, modifica il blocco in modo che assomigli al seguente esempio e salva il file:
server {
listen 80;
server_name yourwebsite.com www.yourwebsite.com;
return 301 https://yourwebsite.com$request_uri;
}
Con la riga di reindirizzamento precedente attiva, ogni volta che i tuoi clienti digitano tuositoweb.com o www.yourwebsite.com , il sistema li reindirizza automaticamente a https://yourwebsite.com versione del tuo sito web. Tieni presente, tuttavia, che devi aggiungere questa riga all'HTTP 80
blocco del server, non il 443
HTTPS blocco del server.
Probabilmente dovresti anche reindirizzare qualsiasi https://www.yourwebsite.com richieste a https://yourwebsite.com . Puoi farlo aggiungendo un'altra linea di reindirizzamento al 443
blocco del server, spesso situato al di sotto di 80
serverblock nel file di configurazione. Tale modifica è simile al seguente esempio:
server {
listen 443;
server_name www.yourwebsite.com;
return 301 https://yourwebsite.com$request_uri;
}
server {
listen 443;
server_name yourwebsite.com;
}
Nota: È probabile che i blocchi del tuo server contengano più informazioni rispetto agli esempi semplificati precedenti.
Un dominio a un altro
Quando hai un dominio con più domini di primo livello (come .com ,.net , .org e così via) e desideri che tutti quei siti raggiungano lo stesso sito Web, utilizza un reindirizzamento. Per questo esempio, assumiamo che tu possiedatuositoweb.com , iltuositoweb.org e tuositoweb.net e desideri reindirizzarli tutti a tuositoweb.com .
Modifica di nuovo il file di configurazione per il tuo dominio. Invece di aggiungere un HTTPS reindirizzare, modificare il blocco del server come mostrato nell'esempio seguente:
server {
listen 80;
server_name yourwebsite.net;
return 301 $scheme://yourwebsite.com$request_uri;
}
server {
listen 80;
server_name yourwebsite.org;
return 301 $scheme://yourwebsite.com$request_uri;
}
Ora, ogni volta che i tuoi clienti accedono a yourwebsite.net o tuositoweb.org , il sistema li reindirizza a tuositoweb.com invece.
Salva e chiudi i file di configurazione dopo le modifiche e riavvia entrambi nginx
e php-fpm
per rendere attive queste modifiche.