我有一个运行 CentOS 的 Vagrant VM,它是从 puphpet 文件 (config.yaml) 构建的,我正在尝试设置并访问 PHP 错误日志。
config.yaml-PHP 部分:
php:
install: '1'
settings:
version: '56'
modules:
php:
- cli
- intl
- mcrypt
pear: { }
pecl:
- pecl_http
ini:
display_errors: Off
error_reporting: E_ALL & ~E_NOTICE & ~E_STRICT
session.save_path: /var/lib/php/session
date.timezone: America/Denver
log_errors: On
error_log: /var/log/php_errors.log
fpm_ini:
error_log: /var/log/php-fpm.log
fpm_pools:
phpfp_tg4gv8zscipk:
ini:
prefix: www
listen: '127.0.0.1:9000'
security.limit_extensions: .php
user: www-user
group: www-data
composer: '1'
composer_home: ''
/etc/php.d/zzzz_custom.ini
[CUSTOM]
log_errors=true
error_reporting=E_ALL & ~E_NOTICE & ~E_STRICT
session.save_path=/var/lib/php/session
cgi.fix_pathinfo=1
date.timezone=America/Denver
error_log=/var/log/php_errors.log
display_errors=false
/etc/php.ini
error_log = /var/log/php_errors.log
log_errors = On
我已经搞定了:
sudo touch /var/log/php_errors.log
sudo chown www-data: /var/log/php_errors.log
sudo chmod +rw /var/log/php_errors.log
当我运行以下命令时,我什么也没有得到:
sudo tail -f /var/log/php_errors.log
我知道应该存在 PHP 错误,因为我在某个文件中明确创建了它们来测试,例如使用未声明的函数等。
我也尝试过不设置error_log
config.yaml 和 php.ini 文件中的设置,看看默认设置是否有效,因为我认为它会将 PHP 错误转储到 中/var/log/httpd/error_log
。
我真的不知道接下来该怎么办。任何帮助我都非常感谢!
答案1
检查你的/etc/php.ini
错误处理。
将其更改为与文件相同config.yaml
并且它就起作用了。
还可以尝试设置chmod 777
您的位置。