一般情況下,Referer和User-Agent同時為空的時候,可以認為是其他網站在批量采集本站數據,我打算deny掉這種請求。不過apache文檔里面沒有提到有兩個環境變量的與操作。最后chinaunix上有大俠回答了我的問題:
SetEnv?? log_flag=1
SetEnvIf Referer !"^$"? log_flag=0
SetEnvIf user-agent !"^$" log_flag=0
...
看字面上,就是如果用兩個非的或來代替與
這樣,只要兩個條件有一個不滿足,就log_flag就會變掉,只要它變掉了,就說明不符合我屏蔽的規則。
高手就是高手,為什么非要苛求一定要有“與”呢,兩個“非”的“或”,不一樣達到要求?
學習了。
SetEnv?? log_flag=1
SetEnvIf Referer !"^$"? log_flag=0
SetEnvIf user-agent !"^$" log_flag=0
...
看字面上,就是如果用兩個非的或來代替與
這樣,只要兩個條件有一個不滿足,就log_flag就會變掉,只要它變掉了,就說明不符合我屏蔽的規則。
高手就是高手,為什么非要苛求一定要有“與”呢,兩個“非”的“或”,不一樣達到要求?
學習了。