【发布时间】:2022-01-07 16:31:22
【问题描述】:
我有一个运行多个容器的 php docker 应用程序,例如
j_php-fpm_1 和 j_nginx_1
j_php-fpm_1 是整个项目的容器(Magento / php,但这里不相关)。
我的问题如下
在应用程序的某个时刻,我触发了A technical problem with the server created an error. Try again to continue what you were doing. If the problem persists, try again later.,这意味着我的 php 中甚至在进入框架之前就出现了服务器错误。
所以我进入了我的j_php-fpm_1,但由于权限被拒绝而无法读取文件
make bash
docker-compose exec -u magento php-fpm bash
magento@315933593d37:/var/www/magento$ ls -al /var/log/php7.3-fpm.log -rw------- 1 root root 0 Jan 3 10:04 /var/log/php7.3-fpm.log
magento@315933593d37:/var/www/magento$
cat: /var/log/php7.3-fpm.log: Permission denied
然后我尝试检查实时 nginx 日志
docker logs j_nginx_1
结果我看到我的请求触发了错误,但日志中仍然没有打印错误
172.21.0.1 - - [05/Jan/2022:15:22:34 +0000] “POST /admin_sdj/sponsorship/index/sponsorship/key/d81ba9d66a439a3fe7a2e70e9567830be8b3a1cef39f8984002129045622f=b HTTP/129045622f=b HTTP/?/ 200 190 "http://j.dev-cpy.fr/admin_sdj/customer/index/edit/id/1/key/05dae1e3543127f8c02295e29b06b70722d085f69a37b0d7155fc257ce6b1257/" """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""; ) Chrome/96.0.4664.110 Safari/537.36"
ngning 容器的访问日志和错误日志为空。
我可以在哪里找到我的错误日志?
PS : 我无法更改 php fpm 日志文件权限。
编辑:以 root 身份连接 docker exec -it --user root j_php-fpm_1 /bin/bash 显示 fpm 日志文件也是空的。
我不知道该看哪里了
【问题讨论】:
-
作为 PHP 错误日志的可能参考,你看过this page吗?
-
您是否检查过您的应用程序本身是否存储了任何日志文件?
-
如果您可以查看 PHP
phpinfo()函数,此输出应该会显示错误日志的存储位置 -
@Martin 不知何故我找到了错误的来源;这实际上是由于错误的 url 路径触发了 404 错误......这在随后的一些请求中触发了服务器错误。虽然仍然不知道日志,但至少我的问题现在已经解决了。我让话题打开,以防有人有想法。感谢您的帮助。
-
@Claims 你可以回答你自己的问题(我会鼓励在这个例子中),但如果有人给你一个更简洁/描述性的答案,你不需要将它设置为“正确”的答案
:-)