Я только что делал подобное. У меня взлетело всё вот так.<br>Работает и clear url и ?q=<br><br><br>   server {<br>        include listen.conf;<br>        server_name  <a href="http://mastershar.com">mastershar.com</a> <a href="http://www.mastershar.com">www.mastershar.com</a> <a href="http://karnaval.skitalets.ru">karnaval.skitalets.ru</a>;<br>
        error_log    /home/slava-k/www/karnaval/logs/nginx-error.log;<br>        access_log   /home/slava-k/www/karnaval/logs/nginx-access.log;<br>        set $root    /home/slava-k/www/karnaval/html;<br>        root         $root;<br>
        ssi          on;<br><br><br>        location /drupal {    ## Try to serve file, then try to serve as clear URL<br>            try_files $uri @drupal;<br>        }<br>        location  @drupal {   ## Clear URL<br>            rewrite  ^/drupal/(.*)$     /drupal/index.php?q=$1 last;<br>
        }<br><br>        location ~ \.php$ {   ## FastCGI handler<br>           fastcgi_pass   <a href="http://127.0.0.1:9000">127.0.0.1:9000</a>;<br>           fastcgi_index  index.php;<br>           fastcgi_param  SCRIPT_FILENAME  $root$fastcgi_script_name;<br>
           fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;<br>           fastcgi_param  QUERY_STRING     $args;<br>           include        fastcgi_params;<br>        }<br><br>   }<br><br><br><br><div class="gmail_quote">
3 февраля 2010 г. 10:56 пользователь Sergiy Kukunin <span dir="ltr">&lt;<a href="mailto:sergey.kukunin@gmail.com">sergey.kukunin@gmail.com</a>&gt;</span> написал:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Я хочу, чтобы несуществующие .php файлы переходили на реврайт, а существующие - на исполнение<br><br><div class="gmail_quote">3 февраля 2010 г. 3:10 пользователь Daniel Podolsky <span dir="ltr">&lt;<a href="mailto:onokonem@gmail.com" target="_blank">onokonem@gmail.com</a>&gt;</span> написал:<div>
<div></div><div class="h5"><br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>&gt;   Заменяем location /drupal на location ~ /drupal ( делая из него регулярное<br>
&gt; выражение ). Однако, с таким положением, хоть и реврайты срабатывают,<br>
&gt; возвращается текст php. Т.е., после нахождения нужного location&#39;а, и<br>
&gt; применение rewrite&#39;а, дальше поиск не идет.<br>
</div>Если Вы хотите, чтобы во второй локешн попали все php кроме тех, что<br>
начинаются с /drupal - можно так и написать<br>
^(?!/drupal).*\.php$<br>
<div><div></div><div>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org" target="_blank">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
</div></div></blockquote></div></div></div><br>
<br>_______________________________________________<br>
nginx-ru mailing list<br>
<a href="mailto:nginx-ru@nginx.org">nginx-ru@nginx.org</a><br>
<a href="http://nginx.org/mailman/listinfo/nginx-ru" target="_blank">http://nginx.org/mailman/listinfo/nginx-ru</a><br>
<br></blockquote></div><br><br clear="all"><br>-- <br>Regards,<br>Slava<br>