我的服务器上只有32GB,日志很快占用了这个空间。所以我想禁用日志。
我想我找到了它的位置,但由于我是服务器上的完整菜鸟,我不想在不确定它们不会使服务器崩溃的情况下开始改变事物。
在etc / apache2 / apache2.conf中,我发现了这个:
#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
# If you are behind a reverse proxy, you might want to change %h into %{X-Forwarded-For}i
#
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
在etc / apache2 / conf.d / other-vhost-access-log中,我发现了这个:
# Define an access log for VirtualHosts that don't define their own logfile
CustomLog ${APACHE_LOG_DIR}/other_vhosts_access.log vhost_combined
禁用日志需要做什么?
提前致谢
答案 0 :(得分:5)
如果您确实要禁用日志,则必须在Apache配置文件中注释掉任何ErrorLog
和CustomLog
指令。在Debian上,这些将位于/etc/apache2/httpd.conf
和/etc/apache2/apache2.conf
(基本配置),然后是/etc/apache2/sites-available/*
(特定的虚拟主机配置)。
你可以在它们前面添加一个'#'字符来评论它们。
完成更改后,请运行/etc/init.d/apache2 restart
以使更改生效。
IMO,一个更好的解决方案 - 因为日志通常非常方便 - 是按照上面提到的那样安装日志旋转。在Debian中,运行:
sudo apt-get install logrotate
logrotate将在其默认配置中每天拆分日志并压缩旧日志,从而节省大量磁盘空间,同时保留日志本身。
答案 1 :(得分:1)
这里接受的答案是错误的。注释掉该行不会禁用错误日志,它只是将其恢复为apache2默认值。来自apache2 ErrorLog documentation:
默认值:ErrorLog logs / error_log(Unix)ErrorLog logs / error.log(Windows和OS / 2)
换句话说,这将出现在apache安装根目录' logs' 。目录
要禁用我认为您需要重新编译而不记录支持(不确定是否可能),或将ErrorLog传递给/ dev / null:
ErrorLog" | / dev / null"