首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁用apache2日志

问禁用apache2日志
EN

Stack Overflow用户
提问于 2012-05-29 15:11:56
回答 2查看 6.8K关注 0票数 2

我的服务器上只有32 up的空间,而日志很快就会消耗掉这些空间。所以我想禁用日志。

我想我已经知道该在哪里做了,但是因为我是一个完全的服务器新手,所以我不想在不确定它们不会使服务器崩溃的情况下开始改变事情。

在etc/apache2/apache2.conf中,我发现:

代码语言:javascript
复制
    #
# 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中,我找到了:

代码语言:javascript
复制
# Define an access log for VirtualHosts that don't define their own logfile
CustomLog ${APACHE_LOG_DIR}/other_vhosts_access.log vhost_combined

我需要做什么来禁用日志?

提前感谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-29 15:20:54

如果您确实想禁用日志,则必须注释掉Apache配置文件中的任何ErrorLog和CustomLog指令。在Debian上,它们位于/etc/apache2/httpd.conf和/etc/apache2/apache2.conf (基本配置)中,然后是/etc/apache2/sites-available/* (特定虚拟主机配置)。

您可以通过在它们前面添加一个'#‘字符将它们注释掉。

更改完成后,运行/etc/init.d/apache2 restart以使更改生效。

由于日志通常非常方便,因此更好的解决方案是按照谢尔盖上面的建议安装日志轮换。在Debian中,运行以下命令:

代码语言:javascript
复制
 sudo apt-get install logrotate

logrotate将在其默认配置中,每天拆分日志并压缩旧日志,在保留日志本身的同时节省大量磁盘空间。

票数 5
EN

Stack Overflow用户

发布于 2015-02-06 18:21:52

这里公认的答案是错误的。注释掉该行并不会禁用错误日志,它只是将其恢复为apache2默认值。从apache2 ErrorLog documentation

默认: ErrorLog日志/错误日志(Unix) ErrorLog日志/error.log (Windows和OS/2)

换句话说,这将位于apache安装根“logs”目录中的某个位置。

要禁用该功能,我认为您需要重新编译,而不需要日志记录支持(甚至不确定是否可能),或者通过管道将ErrorLog设置为/dev/null:

ErrorLog "|/dev/null"

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10794612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档