<div class="gmail_quote">2010/7/19 Igor Sysoev <span dir="ltr"><<a href="mailto:igor@sysoev.ru" target="_blank">igor@sysoev.ru</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div></div><div>On Sun, Jul 18, 2010 at 08:22:35PM +0300, Veaceslav Grecea wrote:<br>
<br>
> Здравствуйте.<br>
><br>
> Есть вот такие реврайт правила:<br>
><br>
> RewriteRule detail-property-results-([0-9]+).php$<br>
> /results_detail.php?pageindex=$1&lang=en<br>
> [NC,L]<br>
> RewriteRule detail-property-results.php$<br>
> /results_detail.php<br>
> [NC,L]<br>
> RewriteRule property/([0-9]+)/(.*).php$<br>
> property-detail-2?propertyid=$1&lang=$2<br>
> [R,L]<br>
> RewriteRule property-results-([0-9]+).php$<br>
> /results.php?pageindex=$1&lang=en<br>
> [NC,L]<br>
> RewriteRule property-results.php$<br>
> /results.php?lang=en [NC,L]<br>
><br>
> Я уже день мучаюсь и никак не могу перенести их под локейшены nginx-а.<br>
> Хотя бы пример по первому правилу.<br>
<br>
</div></div>Я бы сделал так (писать больше, зато сопровождать легче):<br>
<br>
location /detail-property-results {<br>
<br>
location = /detail-property-results.php {<br>
fastcgi_pass ...<br>
fastcgi_param SCRIPT_FILENAME /path/to/results_detail.php;<br>
fastcgi_param QUERY_STIRNG "";<br>
include fastcgi_params0;<br>
}<br>
<br>
location ~ ^/detail-property-results-([0-9]+)\.php$ {<br>
fastcgi_pass ...<br>
fastcgi_param SCRIPT_FILENAME /path/to/results_detail.php;<br>
fastcgi_param QUERY_STIRNG pageindex=$1&lang=en;<br>
include fastcgi_params0;<br>
}<br>
<br>
return 404;<br>
}<br>
<br>
location /property-results {<br>
<br>
location = /property-results.php {<br>
fastcgi_pass ...<br>
fastcgi_param SCRIPT_FILENAME /path/to/results.php;<br>
fastcgi_param QUERY_STIRNG lang=en;<br>
include fastcgi_params0;<br>
}<br>
<br>
location ~ ^/property-results-([0-9]+)\.php$ {<br>
fastcgi_pass ...<br>
fastcgi_param SCRIPT_FILENAME /path/to/results.php;<br>
fastcgi_param QUERY_STIRNG pageindex=$1&lang=en;<br>
include fastcgi_params0;<br>
}<br>
<br>
return 404;<br>
}<br>
<br>
location /property/ {<br>
<br>
location ~ ^/property/([0-9]+)/(.*)\.php$ {<br>
return http://$host/property-detail-2?propertyid=$1&lang=$2;<br>
}<br>
<br>
return 404;<br>
}<br></blockquote>hg_04, Игорь, спасибо за помощь.<br>Действительно, решение Игоря очень красиво и элегантно. Мне все равно сколько писать, главное чтобы было правильно и понятно сразу.<br>Но некоторые вещи не работают: этот location ~ ^/property-results-([0-9]+)\.php$ по гет-у не передаёт значения и пагинатор не работает в результате. Там ури примерно вот такое:<br>
/category/properties/detail-property-results-2.php<br>Видимо не нужен ^. Или я не прав ?<br><br>Я попытаюсь пообщаться с программером насчет этого.<br><br><br>
</div><br>