FastCGI PHP No input file specified.

Igor Sysoev igor at sysoev.ru
Tue Feb 22 23:43:26 MSK 2011


On Tue, Feb 22, 2011 at 11:14:23AM -0500, alexk wrote:

> I have Zend Framework project working so all non static requests are
> forwarded to public/index.php. But now I need to allow PHP scripts from
> another folder - /generator/ to work as usual. So I've added another
> location and use "fastcgi_param   SCRIPT_FILENAME
> /var/www/new/public/generator$fastcgi_script_name;"
> 
> As a result it returns "No input file specified.". Not sure what's the
> problem is.
> 
> Thanks for any help. Here you are config file:
> 
> server {
>         listen   80;
>         server_name  ***************;
> 
>         gzip on;
>         gzip_types text/html text/css application/x-javascript
> application/javascript text/plain text/xml;
> 
>         charset utf-8;
> 
>         #access_log  /var/log/nginx/localhost.access.log;
> 
>         location / {
>                 root   /var/www/new/public;
>                 fastcgi_pass   127.0.0.1:9000;
>                 fastcgi_index  index.php;

fastcgi_index is useless here, because all requests are handled by
"/var/www/new/public/index.php"

>                 fastcgi_store           off;
>                 fastcgi_store_access    user:rw  group:rw  all:r;

fastcgi_store/fastcgi_store_access are not needed here.

>                 charset utf-8;
> 
>                 fastcgi_param  SCRIPT_FILENAME
> /var/www/new/public/index.php;
>                 include        fastcgi_params;
>                 index          index.php;

"index" is useless here, because all requests are handled by fastcgi_pass.

>         }
> 
>         location /generator/ {
>                 fastcgi_pass    127.0.0.1:9000;
>                 fastcgi_param   SCRIPT_FILENAME
> /var/www/new/public/generator$fastcgi_script_name;
>                 include         fastcgi_params;
>         }

When you request "/generator/script.php", SCRIPT_FILENAME is equal
to "/var/www/new/public/generator/generator/script.php". You should
remove "/generator" from fastcgi_param SCRIPT_FILENAME:

   fastcgi_param SCRIPT_FILENAME /var/www/new/public$fastcgi_script_name;


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



More information about the nginx mailing list