Может кто-нибудь объяснить, почему они говорят это в документации по nginx? Почему это "громоздко и неэффективно"?
Перенаправление на основной сайт
Люди, которые в течение своего общего хостинга использовали для настройки всего, используя только файлы Apache .htaccess, обычно переводят следующие правила:
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;
}
...
}
Это неправильный, громоздкий и неэффективный способ. Правильный путь - определить отдельный сервер для 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;
...
}