Привет!<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">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">serv.ru</a> <a href="http://www.serv.ru">www.serv.ru</a>;<br>
location / {<br> proxy_pass <a href="http://127.0.0.1:80">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 POST requests<br> }<br> }<br>}<br><br>Важно: в первом блоке server {} директивы server_names нету вообще.<br>
После добавления второй секции server {}, где явно указал некоторые 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">serv.ru</a>" on 89.108.xx.xx:80, ignored<br>
<br>Так совпало, что одно из этих имён есть hostname сервера<br># hostname<br>
<a href="http://serv.ru">serv.ru</a><br><br>Вот тут<br><a href="http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name">http://sysoev.ru/nginx/docs/http/ngx_http_core_module.html#server_name</a><br>читал про то, что "Первое имя становится основным именем сервера.
По умолчанию используется имя машины (hostname)."<br><br>Вопрос 1: Верно ли я понимаю, что запросы на <a href="http://serv.ru">serv.ru</a> обрабатываются первым server {} ?<br>Вопрос 2: Как сделать так чтобы запросы на <a href="http://serv.ru">serv.ru</a> обрабатывались вторым server {}? Можно ли сделать это не трогая первый блок server {} ?<br>
<br>Спасибо!<br><br>-- <br>Regards,<br>Slava<br>