gpt4 book ai didi

写入错误日志的 PHP 错误

转载 作者:行者123 更新时间:2023-12-04 18:46:24 25 4
gpt4 key购买 nike

我的 Linux 服务器在 Apache2 上运行 PHP 7 作为 CGI。在 php.ini我有

error_log = /var/log/apache2/php.log

现在,我有两个问题:

1) 所有 PHP 错误转到 /var/log/apache2/error.log而不是 php.log .我编辑了权利 php.ini因为 ini_get('error_log')返回 php.log 的完整路径在 PHP 中。

2) 当我尝试在 PHP 中打开这些文件中的任何一个时,我的权限被拒绝。我有 chmod 'd 两个文件到 777,但 PHP 仍然无法访问它们。

服务器已多次重新启动,因此配置更改适用。我的 Apache 配置是这样的:
ErrorLog ${APACHE_LOG_DIR}/error.log

ScriptAlias /local-bin /usr/bin
AddHandler application/x-httpd-php7 php
Action application/x-httpd-php7 /local-bin/php-cgi7.0
<Directory "/usr/bin">
Require all granted
AllowOverride All
</Directory>

如何将 PHP 错误重定向到正确的文件,并使其对 PHP 可读?提前致谢!

最佳答案

您需要更改 ownergroup日志目录和日志文件/s(如果已经存在/s)到www-data :

sudo chown -R www-data:www-data /path/to/log/directory

不要将目录权限更改为 777因为它可能会导致安全问题,请使用 775反而。对于日志文件,请使用 664 .

您可能还想将您的系统用户添加到组 www-data如果还不是成员(使用 groups 命令检查现有组),则需要在此之后重新启动系统才能使更改生效:
sudo adduser user www-data #change 'user' to your 

关于写入错误日志的 PHP 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36920983/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com