Por que o redirecionamento dentro do arquivo de configuração do nginx é ineficiente?

0

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;
    ...
}
    
por Dave 29.10.2011 / 20:48

1 resposta

1

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.

:)

    
por 31.12.2011 / 06:30