FastCGI returning "No Input File" instead of 404

Igor Sysoev is at rambler-co.ru
Thu May 21 21:51:47 MSD 2009


On Thu, May 21, 2009 at 12:25:09PM -0400, APseudoUtopia wrote:

> Hey everyone,
> 
> This seems like it would be easily solved, but I'm not sure how. I
> just finished setting up PHP on my system. It runs fine. However, when
> I browse to a page like
> "http://domain.com/this-php-script-does-not-exist.php" it returns "No
> input file specified" instead of a normal nginx 404 error. I'm trying
> to get it to display a normal 404 error instead. I've tried toggling
> the fastcgi_intercept_errors, which seems like it would fix the
> problem, however it didn't work.
> 
> I'm running nginx stable, 0.6.37.
> 
> It seems that try_files would work somehow, but my understanding is
> that try_files does not exist in 0.6.37?

try_files exists in 0.6.36+.
You may try this also:

 location ~ .*\.php$ {
	try_files  $uri  /404.html;

	fastcgi_pass 127.0.0.1:9000;
	...

> My FastCGI config is below.
> 
> location ~ .*\.php$ {
> 	fastcgi_index index.php;
> 	fastcgi_ignore_client_abort off;
> 	fastcgi_intercept_errors off;
> 	fastcgi_pass 127.0.0.1:9000;
> 	fastcgi_read_timeout 10; # sec to wait for php-cgi to return data
> 	fastcgi_param SCRIPT_FILENAME /usr/local/www/web_root$fastcgi_script_name;
> 	include /usr/local/etc/nginx/fastcgi_params;
> }
> 
> Thank you for any and all help.


-- 
Igor Sysoev
http://sysoev.ru/en/





More information about the nginx mailing list