1
我有這樣的規則會被重定向沒有在他們.
所有請求index.php
,並能正常工作:問題與多個重寫規則
# Redirect all page requests to content handler
RewriteRule ^([^.]*)$ index.php [L]
現在我也想禁止任何請求在原始URL包含.php
。當我添加另一個這樣的規則(第一個)之後,第一個規則遊:
# Disallow access to PHP files
RewriteRule \.php 404.php [L]
我認爲增加[L]
到的第一條規則將停止從正在執行的第二條規則,但似乎都沒有效果:從所述第一規則(即index.php
)的輸出相匹配的第二條規則和所有請求在404.php
結束。我在這裏做錯了什麼?
謝謝,我的工作內容與您的示例類似。我沒有意識到每個規則都會引發新的請求。還有一件事:有沒有辦法判斷一個URL是原來的一個或重寫一個?這樣我可以防止用戶直接訪問'index.php'。 – casablanca 2010-09-03 19:53:44
呀,看看mod_rewrite的參考,有一個爲子請求的測試。 – zigdon 2010-09-03 20:03:16