Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [nginx feature request] change server_name default value to ""
On 20.07.2010 8:21, Kruglov Eugenie wrote:
Если не брать в расчёт субьективизм, что мне интуитивно понятнее
"server_name $hostname;", то остаётся вопрос с логами: в случае
незаполненного server_name что будем писать в лог? Если $hostname -
нелогично. ""? Косяки с анализаторами логов, косяки с читаемостью.
для логов эта проблема решена, вместо "" для пустых и отсутствующих
значений каких-либо полей и в nginx и в apache выводится символ '-'
и для всех таких случаев, где применяется server_name _;
server {
listen 80 default_server;
server_name _;
return 444;
}
что будет в логе, символ '_' или символ '-', - практически нет разницы.
причем, дефолт server_name ""; никому мешать не будет, в частности,
в вышеприведенном примере конфига из официальной документации:
http://nginx.org/en/docs/http/request_processing.html
#how_to_prevent_undefined_server_names
We have chosen the non-existent domain name ?_? as the server name [...]
Note that you should set a name for this server, otherwise nginx will
use the hostname.
этот вариант обхода и "выключения" мешающего дефолта
будет не нужен, и можно будет просто написать:
server {
listen 80 default_server;
return 444;
}
и туда будут попадать все запросы на несуществующие сервера
и все запросы у которых отсутствует поле "Host" - что нам и надо.
при написании примеров использования nginx, документации, ... приходится
многократно повторять "server_name _;" для отмены навязчивого дефолта.
изменить дефолтовое значение server_name на "", что сделает ненужным
хак server_name _; и в результате этого конфиги станут чище и красивее.
отсутствие директивы server_name подразумевает пустое имя сервера ""
дефолт server_name $hostname; является неожиданным поведением nginx.
Предложение мне нравится.
У кого-нибудь есть возражения ?
--
Best regards,
Gena
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru
|