apache 2.2 (ubuntu) 不允许我通过.htaccess 设置php 错误报告?

Posted

技术标签:

【中文标题】apache 2.2 (ubuntu) 不允许我通过.htaccess 设置php 错误报告?【英文标题】:apache 2.2 (ubuntu) won't let me set php error reporting via .htaccess? 【发布时间】:2011-05-01 18:42:14 【问题描述】:

我运行 ubuntu (debian) linux 和 apache 2.2/php 5.2 的服务器有问题

因为这主要是一个生产服务器,display_errors 在 php.ini 中被关闭

出于开发目的,我想为某些域启用这些错误报告功能。但是当我设置

php_flag display_errors on

在测试域的 .htaccess 文件中,它根本不起作用:( 所以我必须在影响服务器上所有网站的 php.ini 中设置 display_errors...如何在本地为一个域设置这个?

【问题讨论】:

【参考方案1】:

除非 PHP 作为 Apache 模块运行,否则您不能在 .htaccess 文件中提供 PHP 指令。是这样吗?如果是这样,首先确保文件正在被实际读取。您可以做的快速测试是故意在 .htaccess 文件中生成语法错误:您的站点应该返回 500 错误消息。如果您将 PHP 作为 CGI 运行,您可能在某处为每个用户创建了一个自定义的 php.ini 文件。

最后但同样重要的是,您可以在每个应用程序的基础上启用错误报告。只需在顶部添加此代码:

<?php

ini_set('display_errors', 1);
error_reporting(E_ALL);

?>

【讨论】:

【参考方案2】:

您的虚拟主机中是否启用了AllowOverride?如果设置为“无”,则 Apache 将完全忽略 .htaccess 文件。

【讨论】:

以上是关于apache 2.2 (ubuntu) 不允许我通过.htaccess 设置php 错误报告?的主要内容,如果未能解决你的问题,请参考以下文章

Apache 升级 2.2 -> 2.4 问题

ubuntu18安装wordpress5.2.2环境配置

Apache 2.4 不使用适用于 2.2 的规则通过 mod_rewrite 进行代理

Apache 2.4 VirtualHost Ubuntu 只允许访问本地网络

使用Weblogic的Apache 2.2 ProxyPass - 不能使用root

Apache 2.4 访问控制;