需要使用標誌? RewriteCond? mod_rewrite已啓用並正在運行,我的問題是如何表達我的需求:有一條通用規則和一些例外規則,例外情況不起作用,並且解決方案必須避免循環。如何在通用正則表達式規則的例外中避免循環?
我/var/www
前使用mod_rewrite的,與通常的文件夾那樣工作/var/www/wiki
,/var/www/foo
,/var/www/bar
(每個都有其索引)。我需要保持這種行爲。現在
,與mod_rewrite的,我使用的是/var/www/index.php
重定向一些特殊的字符串,那場比賽^([a-z0-9]+)
,如http://myDomain/foo123
或http://myDomain/wiikii
。但它也匹配「wiki」和「foo」,即需要異常處理。
我/var/www/.htaccess
是
RewriteEngine on
RewriteRule ^/?(foo|bar)([0-9]+) index.php?$1=$2
RewriteRule ^/?([a-z0-9]+) index.php?foobar=$1
所以,像http://myDomain/wiki
是重定向到index.php?foobar=wiki
,但我需要它,沒有重定向,需要Apache將/wiki
。 PS:我嘗試了一些變化,並將index.php
(使用內部重定向)進行了一些更改,但需要雅緻而安全的Apache Rewrite解決方案,以避免出現循環。
謝謝! (確定不使用「替代」直覺解決方案)那麼現在我必須理解和比較(性能?)和Justin的解決方案:1)RewriteCond保護RewriteRule,因此像「wiki」這樣的異常不由RewriteRule處理; 2)Apache有一個「默認行爲」,所以「wiki」由這個默認值處理。是嗎??關於表現,你和Justin的解決方案有什麼不同? –