nginx+php-fpm+404

Alexey V. Karagodov kav at karagodov.name
Wed May 21 13:26:25 MSD 2008


                 error_page                       
404                             =200    /MISSING_PAGE;

                 location                        /MISSING_PAGE {
                         internal;
                         rewrite                         ^/(.*) 
$                         /                       last;
                         break;
                 }

On 21.05.2008, at 8:37, Денис wrote:

> Здравствуйте.
>
> возможно было, но...
> поднял связку php5.26+nginx по чудной документации http://blog.sonnoprofondo.com/2008/04/30/nginx-php-php-fpm-on-debian-etch-40/
>
> все работает кроме "виртуальных" файлов и директорий
>
> раньше решалось с помощью .htaccess
> RewriteEngine on
> RewriteCond  %{REQUEST_FILENAME} !-f
> RewriteCond  %{REQUEST_FILENAME} !-d
> RewriteRule ^(.*[^/^\.html])$ %{REQUEST_URI}/ [R,L]
> RewriteCond  %{REQUEST_FILENAME} !-f
> RewriteCond  %{REQUEST_FILENAME} !-d
> RewriteRule .* /index.php
>
> все несуществующие директории и файлы обрабатывались внутренним  
> контроллером
>
> Сейчас если запрашивать реальный файл или директорию все работает,  
> если "виртуальную", то славливаю No input file specified.
>
> 666.666.666.666 - - [21/May/2008:11:27:18 +0700] "GET /news/ HTTP/ 
> 1.0" 404 25 "-" "Opera/9.27 (Windows NT 6.0; U; ru)" "domain.ru"  
> 0.005 "-" "-" "OK" "-"
> 666.666.666.666 - - [21/May/2008:11:23:32 +0700] "GET /news/ 
> news_14907.html HTTP/1.0" 404 25 "http://domain.ru/" "Opera/9.27  
> (Windows NT 6.0; U; ru)" "domain.ru" 0.000 "-" "-" "OK" "-"
>
> конфиг
> server {
> listen  domain.ru;
> server_name domain.ru;
> access_log  /var/log/nginx/access.log gzip;
> error_log  /var/log/nginx/error.log;
> error_page   502 503 504 509 /lib/500.html;
> error_page 404 =200 /index.php;
> index index.php index.html;
>
> location ^~ /lib/500.html {
> root         /var/www/html/;
> expires      10d;
> }
>
> location / {
> fastcgi_pass 127.0.0.1:9000;
> fastcgi_index index.php;
> fastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;
> fastcgi_param  QUERY_STRING     $query_string;
> fastcgi_param  REQUEST_METHOD   $request_method;
> fastcgi_param  CONTENT_TYPE     $content_type;
> fastcgi_param  CONTENT_LENGTH   $content_length;
> fastcgi_param   PATH_TRANSLATED /var/www/html$fastcgi_script_name;
> fastcgi_param   REDIRECT_STATUS 200;
> fastcgi_param  REMOTE_PORT        $remote_port;
> fastcgi_param  SERVER_ADDR        $server_addr;
> fastcgi_param  SERVER_PORT        $server_port;
> fastcgi_param  SERVER_NAME        $server_name;
> fastcgi_param  REMOTE_ADDR        $remote_addr;
> fastcgi_param  CONTENT_LENGTH     $content_length;
> fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;
> fastcgi_param  REQUEST_URI        $request_uri;
> fastcgi_param  DOCUMENT_URI       $document_uri;
> fastcgi_param  DOCUMENT_ROOT      $document_root;
> fastcgi_param  SERVER_PROTOCOL    $server_protocol;
> include fastcgi_params;
> }
>
> location ~* ^.+\.(jpg|jpeg|gif|zip|rar|wmv|avi|css|js|swf|png)$ {
> root         /var/home/domain.ru/html/;
> }
>
> }
>
>
> в какую сторону покопать?
>
>
>
>
> --
> Denis V. (ALFA-RIPE)






More information about the nginx-ru mailing list