nginx提示No input file specified怎么办

王朝学院·作者佚名  2016-08-08
窄屏简体版  字體: 小  |  中  |  大  |  超大  

1、php.ini(/usr/local/php/etc/php.ini)的配置中中找到

cgi.fix_pathinfo=0

将其改成

cgi.fix_pathinfo=1

2、nginx配置文件/etc/nginx/conf/nginx.conf中注意以下部分

代码如下

location ~ .php$ {

fastcgi_pass 127.0.0.1:9000;

fastcgi_index index.php;

fastcgi_param SCRipT_FILENAME /home/www/blog$fastcgi_script_name;

include fastcgi_params;

}

红色部分路径需要根据你主机主目录的实际情况填写

配置完以上部分,重启一下nginx和php-fpm,问题成功

另外,还可能跟 路径或者权限 有关系,或者SCRIPT_FILENAME 变量没有被正确的设置(这在nginx是最常见的原因)

1)如果html也出现404错误,那么就是document root 设置的有问题

2)检查脚本文件的权限, 可能PHP或者web server不能读取它

3)SCRIPT_FILENAME设置错误

解决方法:

排除了SCRIPT_FILENAME设置错误,那问题就出现在目录文件夹及文件的权限访问上。重新设置了文件www用户组的权限,立即可以访问后台了。在这里再次特别感谢 久酷 童鞋。

设置权限的SSH命令则是

代码如下

chown -vR www:www /folder

补充:我的SCRIPT_FILENAME设置参数

vim fcgi.conf (SCRIPT_FILENAME的目录)

代码如下

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

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;

对应document_root的权限必须与nginx.conf和fcgi.conf的用户一样

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航