Porque toda vez que você acessar o site na primeira opção, ele irá verificar novamente o cabeçalho do host para redirecioná-lo ou não. e no segundo isso não acontecerá, enviando alguns ciclos de cpu para o lixo.
:)
Alguém pode explicar por que eles dizem isso na documentação do nginx? Por que é "incômodo e ineficaz"?
A redirect to a main site
People who during their shared hosting life used to configure everything using only Apache’s .htaccess files, usually translate the following rules:
RewriteCond %{HTTP_HOST} nginx.org
RewriteRule (.*) http://www.nginx.org$1
to something like this:
server {
listen 80;
server_name www.nginx.org nginx.org;
if ($http_host = nginx.org) {
rewrite (.*) http://www.nginx.org$1;
}
...
}
This is a wrong, cumbersome, and ineffective way. The right way is to define a separate server for nginx.org:
server {
listen 80;
server_name nginx.org;
return 301 http://www.nginx.org$request_uri;
}
server {
listen 80;
server_name www.nginx.org;
...
}
Porque toda vez que você acessar o site na primeira opção, ele irá verificar novamente o cabeçalho do host para redirecioná-lo ou não. e no segundo isso não acontecerá, enviando alguns ciclos de cpu para o lixo.
:)