Nginx无法访问centos路径

Nginx无法访问centos路径

抱歉,标题有点令人困惑,我正在努力理解这个错误。

我有一个 php 文件,放在类似的文件夹中site.com/src/app/index.php,该site.com文件夹位于/var/www/html/运行 Nginx 和 PHP-FPM 的 CentOs 6.5 中。

因此,问题是,每当我使用任何路径函数和常量(如__DIR__,,getcwd())时realpath()index.php我都会期望完整路径为

/var/www/html/site.com/src/app/但是,只site.com/src/app/返回。就好像 php/nginx 不知道var/www/html/文件夹一样。

我甚至去了app/目录并能够使用获取完整路径sudo pwd,但由于某种原因,php 没有读取它。

我想知道为什么会发生这种情况,以及如何解决它?

答案1

根据我在您链接的 Digital Ocean 文档中看到的示例配置,我怀疑您的问题出在以下几行:

fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;

或者,更确切地说,是由于父块中缺少或不正确的根指令。不过,我不确定在这种情况下您会看到这种行为...我觉得它会给出错误,而不是运行脚本并得到错误的结果,但我对 nginx 的经验并不多。

看:https://www.nginx.com/resources/wiki/start/topics/tutorials/config_pitfalls/#fastcgi-path-in-script-filename

如果您仍然不确定如何继续,请添加 nginx 和 php-fpm 配置。

相关内容