0
我有一個外卡虛擬主機,我配合以下條件:mod_rewrite的使用子沒有正確捕捉模式
RewriteCond %{HTTP_HOST} ^([a-z0-9_\-]+)\.([\d]+)\.mydomain\.com [NC]
此規則適用:
RewriteRule ^/?$ /index.php?customer=%1&cluster=%2&%{QUERY_STRING} [L]
但是,如果我嘗試該模式在所有複雜:
RewriteRule ^([\w\-]+)/?$ /index.php?customer=%1&cluster=%2&load=$1&%{QUERY_STRING} [L]
它沒有抓住它。我錯過了什麼?
通過上面的規則: http://dev.0.mydomain.com:8080/作品與第一條規則 http://dev.0.mydomain.com:8080/x/第二規則失敗(即修改第一條規則,只有一個規則)
哦,哇,你是對的!我沒有考慮^ /因爲在舊代碼前的子域我們沒有/那裏,它工作得很好。它也不在舊代碼的虛擬環境中。有多混亂!謝謝! – 2012-07-08 23:22:33
另外,^ /([\ w \ - ] +)假設它匹配的是什麼? \ w內的字符類只是一個字面w。爲什麼不把它輸入爲w? – 2012-07-08 23:25:01
它不是一個字面的w,它匹配A-Z,a-z,0-9。 – 2012-07-08 23:26:19