我为带有 Apache 2.4.3 和 PHP 5.4.7 的 Windows 安装了新的 XAMPP 版本 1.8.1。
我的网站都没有工作,返回 HTTP 错误 500(内部服务器错误)。我将原因追溯到这个 .htaccess 行
php_value display_errors off
当我评论它时,网站可以正常工作。我还有其他运行良好的 php_value 命令。 php_value error_reporting -1
。
Google 寻求解决方案,人们说 PHP 必须作为动态共享对象 (DSO) 加载。 Apache 模块。在我的情况下是这样的 (httpd-xampp.conf):
LoadFile "/xampp/php/php5ts.dll" LoadModule php5_module "/xampp/php/php5apache2_4.dll"
所以这不是造成问题的原因。
为了我团队中的其他人,我更喜欢在 .htaccess 文件中保持 php_value display_errors off
的解决方案。
请帮忙
== 新开发 ==
在评论了使用 mod_expires.c 并且写得很糟糕的 .htaccess 文件的不相关部分之后,又名。正确的方法是把它放在 if 示例中:
<IfModule mod_expires.c> ExpiresActive On <FilesMatch "\.(gif|jpg|jpeg|tif|tiff|bmp|png|js|css|ico)$"> ExpiresDefault "access plus 10 years" </FilesMatch> </IfModule>
500 错误消失了,php_value 指令起作用了。
因此,如果您遇到类似情况,请评论或删除所有不相关的行,并尝试指出问题所在。
最佳答案
首先应该是
php_flag display_errors Off
不喜欢
php_value display_errors Off
但是,我们的服务器按照 PHP 开发人员的建议在“CGI 模式”下运行 PHP(不是作为 Apache 模块),因此您不能在 .htaccess 文件中使用“php_value”或“php_flag”命令。如果您尝试这样做,您会看到一条“内部服务器错误”消息。
关于php - .htaccess php_value display_errors 设置因错误 500 而中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16443441/