Re: Конфигурация Nginx без rewrite

Валентин Бартенев vbart at nginx.com
Mon Jun 30 17:32:39 UTC 2014


On Thursday 26 June 2014 20:47:28 inliquid wrote:
> Добрый день,
> 
> пытаюсь переписать конфигурацию под форумный движок esoTalk на nginx, так
> чтобы избежать использования rewrite, как рекомендует Игорь Сысоев... но не
> получается...
> Прошу уважаемое сообщество помочь...
> 
> Что имеем: 
> 1. сайт работает по ссылке example.com/forum, ЧПУ имеют вид
> /forum/блабла/тынцтынц/.... иногда добавляются параметры ?token=....  и
> т.д.
> 2. .htaccess из коробки для него имеет следующий вид:
> 
> <IfModule mod_rewrite.c>
> RewriteEngine On
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteRule ^(.*)$ index.php/$1 [QSA,L]
> </IfModule>
> 
> 
> 3. Добился работающего аналога конфигурации nginx:
> 
>         location ~ \.(php) {
>                 fastcgi_pass unix:/var/run/php5-fpm.sock;
>                 fastcgi_index index.php;
>                 include fastcgi_params;
>                 fastcgi_param SCRIPT_FILENAME
> $document_root/$fastcgi_script_name;
>                 fastcgi_param PATH_INFO $fastcgi_script_name;
> }
> 
>         location / {
>                         try_files $uri @esotalk;
> }
> 
>               location ~*
> ^/forum/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
>                       root /var/www/example.com;
>               }
> 
>         location @esotalk {
>              rewrite ^/(.*)$ /forum/index.php/$1 last;
> }
> 
> 
> 
> Пытаюсь настроить как рекомендовано, без rewrite:
> 
> 
>         location / {
>                         try_files $uri @esotalk;
> }
> 
> 
> 
>         location @esotalk {
>                 fastcgi_pass unix:/var/run/php5-fpm.sock;
>                 include fastcgi_params;
>                 fastcgi_param SCRIPT_FILENAME
> $document_root/forum/index.php;
>                 fastcgi_param PATH_INFO /index.php$uri; # --->>>????
> }

Уберите отсюда /index.php:

   fastcgi_param PATH_INFO $uri;

--
Валентин Бартенев


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