如何将 PHP error_log 错误消息记录到 Apache 服务器 error_log?
Posted
技术标签:
【中文标题】如何将 PHP error_log 错误消息记录到 Apache 服务器 error_log?【英文标题】:How to log an PHP error_log error message to Apache server error_log? 【发布时间】:2016-01-24 00:51:39 【问题描述】:我正在运行一个带有 cPanel 的 VPS 服务器。我已将所有 Apache 服务器错误设置为记录到 /usr/local/apache/logs/error_log。
可以将错误消息记录到 Apache 错误日志,而不是 /home/user/public_html/error_log.log 中的用户 php 相关 error_log
我有这个用于测试的 sn-p,但我得到的只是我的自定义 error_log 消息,它记录在我的 public_html/ 内的 error_log 文件中,而不是 Apache error_log 中。
<?php
/**
*
* Logs a message to Apache server error_log at /usr/local/apache/logs/error_log
*
*
*/
error_log("Just a ordinary Apache error_log for testing", 0, "/usr/local/apache/logs/error_log.log") // logs to user error_log in public_html/
这可能吗?
【问题讨论】:
【参考方案1】:在您的 Web 根目录中使用 apache .htaccess
文件来记录所有错误和警告。
.htaccess
文件内:
php_flag log_errors on
php_value error_log /usr/local/apache/logs/error_log.log
通过这种方式,您不必为每个错误发生编写代码。 Appache 会自动将所有错误和警告记录到您指定的错误日志文件中。
希望这会有所帮助。
【讨论】:
注意:请记住为您的日志文件提供必要的写入权限。我建议给 0777。 它有帮助,但是使用 suPHP 处理程序和 CloudLinux 运行 PHP 需要一些解决方法来在 PHP 配置中注册全局变量,以使用 php_flag 和 php_value 指令。以上是关于如何将 PHP error_log 错误消息记录到 Apache 服务器 error_log?的主要内容,如果未能解决你的问题,请参考以下文章