這是我目前的.htaccess文件:試圖更改樣式表URL
RewriteEngine On
RewriteBase /application/
RewriteRule (.*)/css/(.*).css www/$1/css/$2.css
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule (.*) index.php?p=$1
所以在這裏我的最終目標是讓
http://localhost/application/guestbook/css/style.css
轉發到
/application/www/guestbook/css/style.css
這幾乎工作,但當我傾銷$ _GET時,我可以看到他正在尋找的網址是
www/www/guestbook/css/style.css
有人可以告訴我爲什麼它有2次www /?我該如何解決它?
你的第一組搶奪整個URL的開頭,即「www/directory」而不僅僅是「directory」。快速修復將改變你的重寫規則爲'/(.*?)/css/(.*).css'。 '。*'之後的'?'表明它是不合理的,即儘可能少地匹配。 – primo
使用RewriteRule /(.?)/css/(.*).css www/$ 1/css/$ 2.css它不會改變的網址例如與/在它前面它不起作用。使用RewriteRule(。?)/ css /(.*).css www/$ 1/css/$ 2.css的結果如下:www/k/css/style.css/css/style.css所以只需要最後一個字母的留言。任何想法? –
分組不是'(。?)',它需要是'(。*?)'。第一個確實只匹配最後一個字母。 – primo