微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

nginx和尾部斜线$ document_root?

我对Nginx使用以下configuration: http : //gist.github.com/340956

但是,这种configuration会导致PHP No input file specified错误。 我能解决这个问题的唯一方法就是改变这条线:

fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;

请注意$document_root和$fastcgi_script_name之间的“/”。 我被告知,这是错误的configuration,但没有人能够确切地告诉我为什么我的configuration需要额外的斜线。

我怎样才能摆脱额外的斜线?

刚刚面对同样的问题(在RHEL6服务器上安装Nginx + PHP-fpm时),可以通过在/ etc / Nginx / fastcgi_params中添加以下行来解决

fastcgi_param SCRIPT_FILENAME $request_filename;

我在RHEL中发现了这条线,而在一个完美的Debian Nginx中。

参数PATH_TRANSLATED是否得到正确的URI? 我在想这是在不计算的conf文件中的变量的直接连接。 当他们之间加入一个斜线,也许他们正确解释。

当您收到No input file specified的错误时,请检查您的日志以查看请求的URI。

删除try_files $uri index.PHP$uri; 在第3行。

优先事项。 只要你一致,任何一种方式都是好的。

可以在配置文件添加斜杠,并确保在文档根目录和脚本名称的末尾和开始处没有额外的斜杠,反之亦然。

当你显式地添加一个root指令时会发生什么,如下所示:

location ~ .PHP$ { # fastcgi_split_path_info ^(.+.PHP)(.*)$; include fastcgi.conf; root /var/www/my_webroot; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.PHP; }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐