使用的.htaccess我想從觀看以下任一頁面的塊3個IP地址:如何阻止某個IP地址看到一組網頁?
http://url.com/foo
http://url.com/foo/bar
http://url.com/foo/bar/foo
所以foo和任何之後。我怎樣才能做到這一點?我似乎可以找到的是如何完全阻止一個IP地址,但沒有阻止它查看站點的某些部分。當他們訪問這些頁面時,我想向他們展示一個404錯誤。
使用的.htaccess我想從觀看以下任一頁面的塊3個IP地址:如何阻止某個IP地址看到一組網頁?
http://url.com/foo
http://url.com/foo/bar
http://url.com/foo/bar/foo
所以foo和任何之後。我怎樣才能做到這一點?我似乎可以找到的是如何完全阻止一個IP地址,但沒有阻止它查看站點的某些部分。當他們訪問這些頁面時,我想向他們展示一個404錯誤。
嘗試這種情況:
RewriteCond %{REMOTE_ADDR} ^111.111.111.111$ [OR]
RewriteCond %{REMOTE_ADDR} ^222.222.222.222$ [OR]
RewriteCond %{REMOTE_ADDR} ^333.333.333.333$
RewriteCond %{REQUEST_URI} ^/foo$ [NC,OR]
RewriteCond %{REQUEST_URI} ^/foo/bar$ [NC,OR]
RewriteCond %{REQUEST_URI} ^/foo/bar/foo$ [NC]
RewriteRule .* - [R=404,L]
這實現的條件:
IF(A或B或C)和(d或E或F) - >顯示404錯誤
我發以防萬一,以防萬一。
您只想阻止目錄/ foo /,因此在/ foo /中創建一個.htaccess文件(直觀上它只適用於/ foo /)。然後,使用相同的語法來阻止IP地址照常:
order allow, deny
deny from 127.0.0.1
allow from all
我相信這將返回一個403 - 禁止。不知道你會如何去返回一個404(你可以只使用相同的頁面,403錯誤,你的404錯誤做的,這是不可能的用戶將檢查響應狀態代碼)
編輯:如果你以RewriteEngine On
開頭,user4035的答案是否有效?
我試過這個,但它不起作用:/ – Nadine
@Nadine Hm,爲我工作。你能否消除%{REQUEST_URI}條件並讓我知道它是否有效?所以我們可以把問題分解成幾部分。 – user4035
我會將您的答案標記爲正確,因爲我已經從代碼中獲得了答案。我把它放在我的.htaccess :) ty的錯誤位置 – Nadine