<div dir="ltr"><div class="Ih2E3d">> Зачем статичный root определять через переменные ?<br><br></div>$srv_root используется в других местах. Дабы не дублировать - вынес в отдельную переменную.<br><br>Это плохо?<br><br><div class="gmail_quote">
15 августа 2008 г. 16:23 пользователь 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 class="Ih2E3d">On Fri, Aug 15, 2008 at 04:09:52PM +0400, Владислав Комиссаров wrote:<br>
<br>
> Ситуация следующая.<br>
><br>
> server {<br>
> ...<br>
> set $srv_root /var/www/<a href="http://domain.ru/htdocs" target="_blank">domain.ru/htdocs</a>;<br>
> ...<br>
><br>
> location / {<br>
> root $srv_root;<br>
> index index.html;<br>
><br>
> if (!-f $request_filename){<br>
> rewrite (.*) /index2.html;<br>
> }<br>
> }<br>
><br>
> location /public/ {<br>
> root $srv_root;<br>
> }<br>
> }<br>
<br>
</div>Зачем статичный root определять через переменные ?<br>
<div class="Ih2E3d"><br>
> При таком конфиге, я ожидаю что при запросе <a href="http://www.domain.ru/" target="_blank">http://www.domain.ru/</a> будет<br>
> произведен внутренний редирект на /index.html, который не попадет в !-f<br>
> $request_filename и сервер отдаст клиенту /var/www/<br>
> <a href="http://domain.ru/htdocs/index.html" target="_blank">domain.ru/htdocs/index.html</a>, но вместо этого клиенту отдается index2.html<br>
><br>
> Есть предположение, что при внутреннем редиректе на /index.html в<br>
> $request_filename остается "/".<br>
<br>
</div>if (!-f $request_filename) выполняется раньше поиска index.html для /.<br>
<br>
Не нужно использовать "if (!-f $request_filename)" !<br>
Не нужно использовать "if (!-f $request_filename)" !<br>
Не нужно использовать "if (!-f $request_filename)" !<br>
<br>
Не нужно!<br>
<div class="Ih2E3d"><br>
root /var/www/<a href="http://domain.ru/htdocs" target="_blank">domain.ru/htdocs</a>;<br>
<br>
location / {<br>
</div> index index.html;<br>
error_page 404 = /index2.html;<br>
}<br>
<font color="#888888"><br>
<br>
<br>
--<br>
Игорь Сысоев<br>
<a href="http://sysoev.ru" target="_blank">http://sysoev.ru</a><br>
<br>
</font></blockquote></div><br></div>