gpt4 book ai didi

php - 如何在AWS Elastic Beanstalk Docker容器中记录PHP错误

转载 作者:行者123 更新时间:2023-12-02 19:38:05 25 4
gpt4 key购买 nike

我有一个要部署到AWS Elastic Beanstalk的PHP Docker容器。我对Docker和EB相对较新,因此仍在学习。我试图最好将php错误记录到/var/log/php_error.log中。

在php.ini中,我已经设置

log_errors = On
error_log = /var/log/php_error.log

然后,我加载了一个带有 error_log("Hi")的页面,但是当我将 eb ssh放入服务器时,未创建php_error.log文件。

我认为这是一个许可问题。 PHP用户(www-data)无权写入root拥有的日志目录。我从未设置过root密码,也找不到任何有关如何获得sudo权限或如何正确设置权限以使其正常工作的文档。我怀疑它可以放入Dockerfile中,但是我对Docker还是陌生的,所以不知道该怎么做。

可能出于相同或相似的原因,我无法使用PHP写入任何文件,例如,执行 file_put_contents("write.txt","hi")会导致权限错误。

任何提示将非常感谢。

最佳答案

我最近不得不这样做,这就是我所做的。

使用.ebextensions,您几乎可以更改任何所需的配置,包括php.ini中的内容。在EB部署zip文件中,确保您有一个名为.ebextensions的文件夹以及.config文件夹,其中包含类似以下示例的内容。

这是我特定于PHP的扩展的示例:

files:
"/etc/php.d/uploads.ini" :
mode: "000644"
owner: root
group: root
content: |
upload_max_filesize = 128M
post_max_size = 128M
error_log = /tmp/php_errors.log

与您类似,我在可能会被命中的地方放置了一个随机的error_log()语句,并且该文件已创建并填充了我所期望的内容。

希望这可以帮助!

关于php - 如何在AWS Elastic Beanstalk Docker容器中记录PHP错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42168362/

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