我正在尝试将 ExpressionEngine 站点迁移到新服务器上,但似乎遇到了障碍。对于所需的功能,EE 需要打开AcceptPathInfo
指令,而对于我的生活,我似乎无法让 Apache 合作。
服务器运行 Fedora Core 18、Apache 2.4.3 和 PHP 5.4.11 Apache 模块。
我尝试在我的虚拟主机配置中设置以下内容:
<VirtualHost *:80>
DocumentRoot /home/mysite/public_html
ServerName mysite.com
<Directory /home/mysite/public_html/>
AcceptPathInfo On
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Order allow,deny
allow from all
</Directory>
</VirtualHost>
但是当我使用 调试时phpinfo()
,它仍然不显示 path_info、orig_path_info 或 orig_path_info_translated(我相信这是由于 AcceptPathInfo 指令被打开而产生的)。
我也尝试AcceptPathInfo
在我的 .htaccess 文件中简单地设置指令 On ,但仍然无济于事。
我一直在检查我的 Dev 和 Live 环境之间的设置,似乎 Dev 服务器正在使用 FastCGI 运行 PHP,并且正在使用 cgi.fix_pathinfo。
通常,我对修改我的 httpd.conf 和 php.ini 相当有信心,但在这一点上,我离兔子洞还很远,而不是我能接受的。我在这里想念什么?
要
AcceptPathInfo
在 Apache 中打开(p.ex Moodle 2.9),您需要更改 httpd.conf 如下:对于 2.4 之前的 Apache 版本:
对于 Apache 2.4.x 或更高版本: