2011-04-11 45 views
1

我有一個需要只適用於去沒有進一步在深度超過1個文件夾如何添加一個重寫條件只傳遞一個文件夾深度的URL?

example.com/a >> rewrite me 

AND NOT

example.com/a/b >> don't rewrite me 

所以我只需要一個深度重寫URL的URL重寫規則1.允許更大的深度,但需要經過不變。

我該怎麼做,做一個Mod_Rewrite條件語句?我可以在哪裏編寫我的個人重寫規則。 謝謝!

回答

1
RewriteEngine on 

# Matches URLs which are equal to: "", "<text>", or "<text>/" 
# if it matches, the rewrite engine does not attempt to match any more patterns 
RewriteRule ^[^/]*/?$ - [L] 

# If the above doesn't match, meaning it's depth is more than one, 
# it forbids the content from being delivered 
RewriteRule .* - [F] 
+0

你能解釋一下每一行的功能嗎,謝謝。我的重寫聲明在哪裏? – Mohammad 2011-04-11 17:51:55

+0

@Mohammad:更新了我的答案。希望能幫助你。 – 2011-04-11 17:54:52

+0

感謝蒂姆,也許我的問題是誤導性的,雖然我需要重定向的內容是最深入的一個文件夾,其他網址不會被重寫,但會顯示。我相信你的重寫規則只會禁止我的系統允許一個部門的URL被請求,而我只需要重定向他們不要禁止其他任何東西。謝謝! – Mohammad 2011-04-11 17:59:42

0

有趣的是,我只是在玩這樣的表情。

RewriteRule ^[^\/]+$ - [L]

我相信這是你在說什麼。

相關問題