apache 访问和错误日​​志写在同一个文件中

apache 访问和错误日​​志写在同一个文件中

我遇到的问题是访问和错误日​​志写在同一个文件中!virtualhosts.conf 中的配置如下:

 <VirtualHost *:80>
  ServerName  ************
  ServerAdmin support@************8
  DocumentRoot /var/www/html/*********.com
  ErrorLog /var/log/httpd/********/********.com_error_log
  CustomLog /var/log/httpd/********/********.com_access_log combined
  <Directory /var/www/html/***********.com>
    Options -Indexes FollowSymLinks
    AllowOverride All
  </Directory>
</VirtualHost>

从配置中可以看出,每个访问和错误日​​志都应该单独保存,但两个日志都写在 *.com_access_log 中,我仔细检查了所有权限、组和所有者……没有发现任何错误

日志文件中的先前错误:

[Thu Sep 19 14:15:02 2013] [error] [client 192.168.10.54] client denied by server configuration: /var/www/html/**********/show_has_offers.php

我试图生成相同的错误,我只能在访问日志中找到以下内容:

192.168.10.75 - - [24/Oct/2013:08:11:14 +0000] "GET /show_has_offers.php HTTP/1.1" 404 1586 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:22.0) Gecko/20100101 Firefox/22.0" 0 17332

错误日志中没有任何内容!

请指教 ...

答案1

您在上面的评论中举的例子是:

192.168.10.125 - - [15/Aug/2013:14:11:55 +0000] "POST /check-status/HTTP/1.1" 400 117 "-" "Apache-HttpClient/UN AVAILABLE (java 1.4)" 0 23314

首先:/check-status 是 Apache 用于查询 mod_status 的一个特殊 URL 别名。它通常不是您在 VirtualHost 上启用的别名。

这不是服务器端错误。这是客户端发出的 http 请求,服务器对此响应 400(格式错误的请求)。将指令设置Loglevelinfo或,debug看看是否可以获取有关它的详细信息。

这样做的标准方法是让 apache 只记录实际错误写入错误日志。每次客户端创建格式错误的请求或文件丢失 (404) 时都将错误写入错误日志,这违背了仔细查看错误日志的意义。

相关内容