Re: Неверно устанавливается $request_uri :( . Nginx/0.8.33 + FastCGI + ZendFramework + SSI

Igor Sysoev igor на sysoev.ru
Вт Мар 2 15:44:36 MSK 2010


On Mon, Mar 01, 2010 at 04:51:37PM +0200, Олег Черній wrote:

> Особенность работы Zend Framework: при запросе любого адреса
> происходит локальный редирект на index.php,
> информация о том какая именно страница запрашивалась берется из
> переменной окружения REQUEST_URI.
> 
> Описание проблемы: при запросе любой страницы вида /index/mypage все
> работает нормально на конфигурации, приведенной ниже. Но если я делаю
> отдельный контроллером блоки, которые хочу встравить через SSI
> инструкцию вида <!--# include virtual="/blocks/someblock" -->, то
> вместо того чтоб в REQUEST_URI получить "/blocks/someblock" я получаю
> "/index/mypage" (адрес страницы, из которой вызываются SSI-инструкции)
> 
> Подскажите как можно эту проблему решить?
> 
> server {
>         listen       80;
>         server_name  zfproject;
> 
>         root   /var/www/zfproject/public;
>         ssi on;
> 
>         location ~ /(img|css|js|assets) {
>                 expires 1h;
>         }
>
>         location / {
>                 rewrite  ^(.*)$  /index.php last;
>                 break;
>                 index  /index.php;
>         }
> 
>         location ~ \.php(/|$) {
>                 fastcgi_pass 127.0.0.1:7777;
>                 fastcgi_param   APPLICATION_ENV development;
>                 include /etc/nginx/fastcgi.conf;
>         }
> }

     location / {
          fastcgi_pass 127.0.0.1:7777;
          fastcgi_param   APPLICATION_ENV  development;
          fastcgi_param   SCRIPT_FILENAME  $document_root/index.php;
          fastcgi_param   REQUEST_URI      $uri?$args;
          include         fastcgi_params0;
     }

fastcgi_params0 - копия fastcgi_params без REQUEST_URI.


-- 
Игорь Сысоев
http://sysoev.ru



Подробная информация о списке рассылки nginx-ru