error_page and named locations
Igor Sysoev
is at rambler-co.ru
Thu Dec 11 13:51:51 MSK 2008
On Thu, Dec 11, 2008 at 10:09:56AM +0000, cynix wrote:
> I'd also like your opinion on another way to do the same thing.
>
> location ~ \.php$ {
> set $script_filename $document_root$fastcgi_script_name;
> if (!-f $script_filename) {
> set $script_filename $document_root/index.php;
> }
> fastcgi_pass 127.0.0.1:1234;
> include fastcgi_params;
> fastcgi_param SCRIPT_FILENAME $script_filename;
> }
>
> Is this a better way to handle requests to non-existent PHP files? This way
> nginx takes care of checking if the file exists, and if it doesn't exist the
> original request is not passed to FastCGI at all. Only 1 request is passed to
> FastCGI, but with the addition of file existence checking. Will this yield
> better performance than 2 requests to FastCGI?
I do not recommend to use if/rewrite in nginx as they have some
implementation issues. Nevertheless, your way is better than passing
2 requests to FastCGI.
I'm going to implement the non_existant_request_file directive to use
in similar configurations:
location ~\.php$ {
non_existant_request_file @drupal;
fastcgi_pass ..
}
This directive test a request file existance before passing a request
to fastcgi/proxy.
Could someone suggest better name ?
--
Igor Sysoev
http://sysoev.ru/en/
More information about the nginx
mailing list