0

我正在尝试设置nginx处理php请求。这个链接说:

本指南在 php.ini cgi.fix_pathinfo = 1(默认值)上运行良好。一些指南坚持将其更改为 cgi.fix_pathinfo = 0 但这样做会使 PHP_SELF 变量损坏(不等于 DOCUMENT_URI)。

但是,这个并没有发出这样的警告:

在 php.ini 中设置 cgi.fix_pathinfo=0。这会导致 PHP 解释器仅尝试给定的文字路径,并在未找到文件时停止处理。

php文档来看:

将此设置为 1 将导致 PHP CGI 修复其路径以符合规范。设置为零会导致 PHP 像以前一样运行。默认情况下它是打开的。您应该修复您的脚本以使用 SCRIPT_FILENAME 而不是 PATH_TRANSLATED。

最好坚持使用默认值。

那么,首先如何重现损坏的PHP_SELF变量?那么,到底是哪一个?设置cgi.fix_pathinfo为 0 是个好主意吗?还是我应该选择其他解决方案?

4

0 回答 0