.htaccess php_value display_errors 设置因错误 500 而中断
Posted
技术标签:
【中文标题】.htaccess php_value display_errors 设置因错误 500 而中断【英文标题】:.htaccess php_value display_errors settings breaks with error 500 【发布时间】:2013-05-02 20:19:17 【问题描述】:我为带有 Apache 2.4.3 和 php 5.4.7 的 Windows 安装了新的 XAMPP 版本 1.8.1。
我的网站都没有工作,返回 HTTP 错误 500(内部服务器错误)。我将原因追溯到这个 .htaccess 行
php_value display_errors 关闭当我评论它时,网站可以正常工作。我有其他 php_value 命令可以正常工作。 php_value error_reporting -1
.
Google 的解决方案,人们说 PHP 必须作为动态共享对象 (DSO) 加载。阿帕奇模块。在我的情况下是这样(httpd-xampp.conf):
加载文件“/xampp/php/php5ts.dll” LoadModule php5_module "/xampp/php/php5apache2_4.dll"所以这不是造成问题的原因。
为了我的团队中的其他人,我更喜欢将php_value display_errors off
保留在 .htaccess 文件中的解决方案。
请帮忙
== 新开发 ==
在评论了使用 mod_expires.c 并且写得不好的 .htaccess 文件的不相关部分之后,又名。正确的方法是把它放在 if 例如:
500 错误消失,php_value 指令正常工作。
因此,如果您处于类似情况,请评论或删除所有不相关的行并尝试指出问题所在。
【问题讨论】:
【参考方案1】:首先应该是
php_flag display_errors Off
不喜欢
php_value display_errors Off
但是,我们的服务器按照 PHP 开发人员的建议(不是作为 Apache 模块)以“CGI 模式”运行 PHP,因此您不能在 .htaccess 文件中使用“php_value”或“php_flag”命令。如果您尝试这样做,您将看到“内部服务器错误”消息。
【讨论】:
更改为php_flag display_errors off
并没有解决问题。正如我所说,我将 PHP 作为 Apache 模块运行并在 .htaccess 文件中设置 php_flag
应该可以工作。
如果是关于flag display_errors,你可以把这一行(在远程服务器上调试你的php代码)放在同一目录的php.ini中。例如。我将以下两行放在 php.ini 文件中:display_errors = On error_reporting = -1
以上是关于.htaccess php_value display_errors 设置因错误 500 而中断的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 AllowOverride 指令来允许 .htaccess 文件覆盖 php_value (Apache2)
.htaccess php_value display_errors 设置因错误 500 而中断
apache中的php_value auto_prepend_file如何与php一起使用它总是留在内存中吗?
区分WORDPRESS user_loginuser_nicenameuser_displayname
UFUN函数UF_MODL UF_DISP UF_OBJ(name_switch) ( UF_DISP_ask_name_display_statusUF_DISP_set_name_displ(