ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

логика обработки 404


  • To: nginx-ru@xxxxxxxxx
  • Subject: логика обработки 404
  • From: Evgeny Stepanischev <se@xxxxxxxx>
  • Date: Fri, 8 Sep 2006 11:41:39 +0400

Добрый день!

Есть вот такой файл конфигурации:

server {

        listen xxx.xxx.xxx.xxx:80;

        server_name one.site.com two.site.com;

        charset utf-8;
                                         
        root /path/to/sites/$host;

        location ~ 
\.(gif|jpg|jpeg|png|ico|mq4|ex4|mqh|txt|zip|dll|js|swf|ico|doc|asx|asf|wmv|pdf|exe)$
 {
        }
              
        location ~ \.(html|css)$ {
           ssi on;
           ssi_types text/css;

           expires off;
        }
                   
        location / {           
           fastcgi_pass   unix:/tmp/php.fcgi;
           fastcgi_intercept_errors on;
         
           fastcgi_param  SCRIPT_FILENAME   /path/to/sites/$host/engine.php;
           fastcgi_param  DOCUMENT_ROOT    /path/to/sites/$host;
           fastcgi_param  REDIRECT_URL     $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  REDIRECT_STATUS  200;
           fastcgi_param  REMOTE_ADDR      $remote_addr;
        }
    }


Надо   сделать   так,   чтобы   для   404  на  файлах  (location,  где
обрабатываются  всякие  там gif, jpg, png, плюс html и css) управление
передавалось на /path/to/sites/$host/engine.php, причём в redirect_url
был URL на который зашёл пользователь.


Т.е. чтобы
http://site.com/test.exe  пользователь  скачивал  нормально, если этот
файл  есть  или,  если  файла  нет, получал красиво оформленную 404 из
движка.

Бился, бился, пока не выходит каменный цветок.

Заранее спасибо!




 




Copyright © Lexa Software, 1996-2009.