我试图防止apache记录我自己的访问。.我启用了SetEnvIf.so并将这些行添加到我的vhost中:

<VirtualHost *:80>
    ...
    SetEnvIf Remote_Addr "192\.168\.1\.1" dontlog
    SetEnvIf Remote_Addr "192\.168\.1\.5" dontlog
    SetEnvIf Remote_Addr "192\.168\.1\.10" dontlog
</VirtualHost>

我必须做错了什么,因为它仍然将192.168.1.10(也包括.1和.5)记录到我的access.log中。

应该将SetEnvIf设置为其他位置吗?

干杯。

最佳答案

您应该在CustomLog行的末尾添加env=!dontlog

示例(我还注意到反斜杠不是必需的):

<VirtualHost *:80>
  ...
  SetEnvIf Remote_Addr "192.168.1.1" dontlog
  SetEnvIf Remote_Addr "192.168.1.5" dontlog
  SetEnvIf Remote_Addr "192.168.1.10" dontlog
  ...
  CustomLog /var/log/apache2/mywebsite.access.log combined env=!dontlog
  ...
</VirtualHost>

09-27 17:18