1
我有一個很奇怪的問題,在我的.htaccess重定向。htaccess返回引用返回沒有值的某些匹配
我已經建立了的規則是:
RewriteRule ^([a-zA-Z0-9\-]*)/$ ?mode=book&permalink=$1
它既多字詞組匹配:
http://www.fernwoodpublishing.ca/About-Canada-Youth-and-Children/
和單字詞組:
http://www.fernwoodpublishing.ca/Kaandossiwin/
然而,當它確實匹配那些沒有任何連字符的單詞短語,反向引用沒有正確傳遞。所以,在上面的例子中應該去
?mode=book&permalink=Kaandossiwin
這將正常工作,它,而不是去
?mode=book&permalink=
剛剛產生的錯誤和中斷的東西整體轉換。
我試過一種方法來解決這個問題,並沒有任何東西似乎有幫助。任何更熟悉htaccess的人都會明白爲什麼在這些特定情況下沒有返回引用。 (我已經用其他例子對它進行了測試,並且精確地經歷了同樣的問題,所以我確定它在所有情況下都是匹配的,但只在返回包含連字符的情況下返回回參考文件。
謝謝這麼多!
謝謝傑森!不幸的是,我的客戶請求了url結構 - 否則我會去/ book /子目錄結構。它使事情有點棘手。我嘗試了你的建議,但不幸的是它似乎完全打破了匹配。我不知道發生了什麼問題了! – sarah 2011-05-17 22:17:05
嘗試'^([\ w \ - ] +)/ $'。 – 2011-05-18 01:01:24
非常感謝,傑森!由於零匹配,在htaccess中發現另一行與此衝突。正則表達式我真的很糟糕! – sarah 2011-05-18 15:30:53