我要讓我的網址從的mod_rewrite刪除子文件夾和PHP
root.com/sub/?page=home
TO
root.com/home
我想要去刪除子文件夾,刪除PHP,只是離開最基本的網址。 另外如果可能,我想將所有非'root.com/ [*]'重定向回root.com。例如,「root.com/home/index.php?page=home」和「root.com/sub/test/」都會重定向回「root.com」。
的.htaccess和mod_rewrite的似乎是最好的辦法 到目前爲止,我有這樣的:
RewriteEngine On
#remove subfolder, WORKS
RewriteCond %{HTTP_HOST} ^root\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.root\.com$
RewriteCond %{REQUEST_URI} !^/sub/
RewriteRule (.*) /sub/$1 [L]
這個工程並刪除子文件夾
#remove PHP, not working :S
RewriteRule ^([a-zA-Z0-9_-]+)$ /index.php?page=$1 [L]
RewriteRule ^([a-zA-Z0-9_-]+)/$ /index.php?page=$1 [L]
但這不是工作,離開「 ?page = home'ect 我想我在第二條規則的正則表達式之前缺少了一些東西,但是我對此很感興趣。
在此先感謝!
編輯:考慮到[L]的事情,仍然沒有骰子。
我猜它需要在一次命中而不是單獨迭代中完成。
凹凸/我發現了另一個問題,當我認爲從我的電腦該站點時(第一部分)顯示爲'www.root.com/page',這很好,但是在我的隊友電腦上,它顯示爲'www.root.com/sub/page'wtf。 – Neros 2011-02-08 06:04:49