Apache2 SetEnvIF

我必须在这里错过一些东西

如果我使用这个规则集:

SetEnvIf Remote_Addr "::1" loopback SetEnvIf Remote_Addr "127\.0\.0\.1" loopback CustomLog logs/access_log combined env=!loopback SetEnvIf Request_URI "^/img/" env=images CustomLog logs/error_log combined env=!images 

我最终在我的error_log localhost请求,我不想要的,我仍然有图像显示。

这总是给我一个语法错误消息,显然你不能比'env'variables定义更多?

 SetEnvIf Remote_Addr "::1" loopback SetEnvIf Remote_Addr "127\.0\.0\.1" loopback CustomLog logs/access_log combined env=!loopback SetEnvIf Request_URI "^/img/" images=1 CustomLog logs/error_log combined images=!1 

我试过这个技巧:

 SetEnvIf Remote_Addr "::1" loopback SetEnvIf Remote_Addr "127\.0\.0\.1" loopback CustomLog logs/access_log combined env=!loopback SetEnvIf Remote_Addr "::1" images SetEnvIf Remote_Addr "127\.0\.0\.1" images SetEnvIf Request_URI "^/img/" images CustomLog logs/error_log combined env=!images 

从这里:

http://www.tek-tips.com/viewthread.cfm?qid=276232&page=198

但我仍然在我的日志中看到图像请求。

有没有人有任何其他方法可以用来过滤失败的(甚至是所有)这种types的图像请求?

 File does not exist: ..../public_html/agility/img/4thjuly/earth.png, 

Request_URI "^/img/"表示URI以img开头,所以请求/public_html/agility/img/4thjuly/earth.png仍然被logging。 尝试这个:

 SetEnvIf Request_URI "(.*)/img/*" images CustomLog logs/error_log combined env=!images