我有一个 CentOS Linux 的 VPS 帐户。
这两个文件每 24 小时就会填满 20 GB 的硬盘:
该统计文件:
/home/httpd/tanguay.info/stats/tanguay.info-error_log
此目录中的某个文件看起来似乎有不同的名称,但其大小已增长到 5+ GB:
/home/admin/__processed_stats
我现在想做的就是关闭 apache 统计记录这样我的硬盘就不会被填满并破坏我的邮件、ftp 等。
因此在文件中:
/etc/httpd/conf/httpd.conf
我注释掉了以下行:
#ErrorLog logs/error_log
然后我删除了上面的两个大文件,重新启动了虚拟机,发现第一个文件(tanguay.info-error_log)已经重新创建并且再次增大。
那么我应该在哪里关闭 Apache 中的日志记录?
(或者 Apache 甚至没有使用这个 httpd.conf 文件作为其配置文件,它保存在哪里?)
答案1
错误日志中记录了两件事:apache 本身的错误和任何 CGI 或 PHP 应用程序的 stderr 副本。您可以使用 LogLevel 选项减少来自 Apache 的错误,但这通常只占日志记录的很小一部分。大部分是 404。您可能会发现其中大部分是由您的应用程序生成的。
显而易见的做法是查看错误日志中的内容并解决问题。如果它每天向您提供数 GB 的日志,则表明它试图告诉您一些事情。也许可以用指向日志片段的链接来更新您的答案。这应该可以让我们为您提供更详细的回复。
(顺便说一句,您只需重新加载 apache 即可使其应用任何配置更改。没有必要重新启动整个服务器。)
答案2
真的,你需要做大卫说,如果您获取了那么多日志,显然会存在问题。但是,如果您确实想转储所有日志,那么在任何 UNIX 机器上,您都可以将错误日志文件符号链接到 /dev/null,从而有效地将它们转储到 UNIX 黑洞中。
ln -s /dev/null /path/to/error.log
在 Centos VPS 上,如果您使用 httpd rpm,那么它肯定应该从 /etc/httpd/conf/httpd.conf 加载其配置,但是它可能在您的 ErrorLog 行之后包含其他文件或指令,请检查httpd -S
以确保稍后没有额外的 vhosts 加载配置。
答案3
该日志 ( tanguay.info-error_log
) 显然不是由该配置行 ( logs/error_log
) 生成的。httpd.conf 中是否有另一个 ErrorLog,/etc/httpd/conf.d 中是否有其他内容,或者其他地方是否有其他内容? httpd -S
可以提供帮助。