2009-06-28 107 views
0

我有以下重寫URL:htaccess的URL重寫幫助

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

# Rewrite all other URLs 
RewriteRule ^(.*)$ index.php?page=$1 [PT,L] 

現在我想添加一個例外,如果URL是一樣的東西mysite.com/abc應該忽略它,它裏面的所有東西也。 mysite.com/abc/dfgs也應該排除在重寫之外。

我該如何做到這一點?

回答

2

如果/ ABC是現有目錄,你可以把另一個.htaccess文件在那裏與

RewriteEngine Off 

如果這是你想不重寫(無論其是否存在)真的只是一個字符串

RewriteCond %{REQUEST_URI} !^/abc 

將不寫,如果請求的路徑以 「/ ABC」 開始

至T EST重寫規則不搞亂網站定期瀏覽器(不,你應該在課程的現場環境進行編輯,這純粹是假設的:-)),我發現以下非常有幫助:

RewriteCond %{REMOTE_ADDR} 12.34.56.78 # <-- where that's your IP address 
+0

這幫助過我。我遇到了一個情況,我的客戶在根目錄中有一個時髦的.htaccess博客,然後在支持文件夾中有Kayako支持。我能夠關閉該文件夾中的.htaccess規則,因爲Kayako軟件非常挑剔,正在拋出403個Forbidden錯誤。 – Volomike 2012-05-10 16:37:29

0

如果URI包含abc,應該避免重寫。這可能或可能不是你想要的。如果它不是編輯你的問題。

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

#Rewrite ONLY if the REQUEST does NOT contain abc 
RewriteCond %{REQUEST_URI} !abc 

# Rewrite all other URLs 
RewriteRule ^(.*)$ index.php?page=$1 [PT,L]