Понял, спасибо.<br><br>Меня смущает только один момент.<br>Когда вторым станет server {} без server_names, то он вообще будет работать?<br><br>Ведь "Если в запросе нет заголовка "Host" или же в нём указано имя, неописанное
ни в одном сервере, слушающем на адресе и порту, на которые пришёл запрос,
то запрос будет обслужен сервером, у которого первым описаны эти адрес и порт."<br><br><div class="gmail_quote">4 марта 2009 г. 19:12 пользователь Igor Sysoev <span dir="ltr"><<a href="mailto:is@rambler-co.ru">is@rambler-co.ru</a>></span> написал:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div><div></div><div class="h5">On Wed, Mar 04, 2009 at 07:02:16PM +0300, Slava Kokorin wrote:<br>
<br>
> Привет!<br>
><br>
> Есть nginx/0.5.35<br>
><br>
> Возникла необходимость логировать POST запросы, и появилась мелкая проблема.<br>
><br>
> Есть такой конфиг:<br>
><br>
> http {<br>
> server {<br>
> include listen.conf;<br>
> location / {<br>
> proxy_pass <a href="http://127.0.0.1:80" target="_blank">http://127.0.0.1:80</a>;<br>
> }<br>
><br>
> }<br>
><br>
> server {<br>
> include listen.conf;<br>
> server_name <a href="http://serv.ru" target="_blank">serv.ru</a> <a href="http://www.serv.ru" target="_blank">www.serv.ru</a>;<br>
> location / {<br>
> proxy_pass <a href="http://127.0.0.1:80" target="_blank">http://127.0.0.1:80</a>;<br>
> proxy_redirect off;<br>
> proxy_set_header Host $http_host;<br>
> proxy_set_header X-Real-IP $remote_addr;<br>
> access_log off;<br>
> client_body_in_file_only on; ## This is to keep temp files with<br>
> POST requests<br>
> }<br>
> }<br>
> }<br>
><br>
> Важно: в первом блоке server {} директивы server_names нету вообще.<br>
> После добавления второй секции server {}, где явно указал некоторые<br>
> server_name, наблюдаю:<br>
><br>
> # nginx -c /usr/local/etc/nginx/nginx.conf<br>
> 2009/03/04 18:49:58 [warn] 95904#0: conflicting server name "<a href="http://serv.ru" target="_blank">serv.ru</a>" on<br>
> 89.108.xx.xx:80, ignored<br>
><br>
> Так совпало, что одно из этих имён есть hostname сервера<br>
> # hostname<br>
> <a href="http://serv.ru" target="_blank">serv.ru</a><br>
><br>
> Вот тут<br>
> <a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name" target="_blank">http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name</a><br>
> читал про то, что "Первое имя становится основным именем сервера. По<br>
> умолчанию используется имя машины (hostname)."<br>
><br>
> Вопрос 1: Верно ли я понимаю, что запросы на <a href="http://serv.ru" target="_blank">serv.ru</a> обрабатываются первым<br>
> server {} ?<br>
<br>
</div></div>Да.<br>
<div class="im"><br>
> Вопрос 2: Как сделать так чтобы запросы на <a href="http://serv.ru" target="_blank">serv.ru</a> обрабатывались вторым<br>
> server {}? Можно ли сделать это не трогая первый блок server {} ?<br>
<br>
</div>Только, если поменять их местами.<br>
<font color="#888888"><br>
<br>
--<br>
Игорь Сысоев<br>
<a href="http://sysoev.ru" target="_blank">http://sysoev.ru</a><br>
<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Regards,<br>Slava<br>