所以我在 apache 日志中不断收到以下错误:
sendmail: fatal: open /etc/postfix/main.cf: No such file or directory
我正在尝试弄清楚在何时何地尝试,但我不知道应该在 apache 日志的哪里更改配置才能显示更多信息。有什么想法吗?
我的 apache2.conf 中有以下内容(我认为这会使其显示正确的格式):
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
注意,我不想修复错误本身(例如使文件存在、修复后缀等)我只想知道尝试执行 sendmail 命令的内容。
答案1
您的 apache 尝试发送电子邮件。可能来自 PHP 或 CGI 脚本,但不是自己发送的。如果脚本被 chrooted,它就无法访问 /etc/postfix/main.cf 并返回错误。您将不会在日志中看到任何内容(除了在小型网站上,您可以在错误行的同时找到用户请求的 URL)。
您也许可以添加自定义日志(带%{format}t
选项)[1],但错误日志中不会有它。
编辑 :您还可以将错误日志重定向到 Syslog,以便由 syslog 添加日期:
ErrorLog syslog:local1
[1]https://httpd.apache.org/docs/trunk/mod/mod_log_config.html#formats