2014-02-19 121 views
1

我是新手,我學過.htaccess。我想從 index.php?page=mobileindex/page/mobile使用.htaccess自定義URL或隱藏查詢字符串

我用這個代碼定製自己的URL ,但它不工作:

RewriteEngine on 
RewriteRule ^index/([0-9]+)/?$ index.php?page=$1 [NC,L] # Handle product requests 

RewriteEngine on 
RewriteRule ^index/([^/.]+)/?$ index.php?page=$1 [L] 
+0

'^指數/([^/.]+)/?$'不匹配'指數/頁/ mobile'。這個表達只會深入一層。你熟悉正則表達式嗎? – mpen

回答

4

這個規則應該工作:

RewriteEngine on 
RewriteBase /cashearn/ 

RewriteCond %{THE_REQUEST} /index\.php\?page=([^\s&]+) [NC] 
RewriteRule^index/page/%1? [R=302,L] 

RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^index/page/([^/]+)/?$ index.php?page=$1 [L,QSA,NC] 

這會讓你的網頁上的URL爲http://domain.com/index/page/mobile

+0

zohaib也想要url中的「索引」 – Lab

+0

好吧我編輯它使'/ index/page/foo' – anubhava

+0

這個.htaccess的位置和你在瀏覽器中輸入了什麼URL? – anubhava

2

嘗試代碼:

RewriteEngine on 
RewriteBase/
RewriteRule ^index/page/([^/.]+)/?$ index.php?page=$1 [L,QSA,NC] 
+1

**親愛的downvoter,你能告訴你爲什麼低估了我的答案嗎?** – TN888

+0

我的意思是「downvote」,而不是「downvoted」;抱歉 – TN888

0

這應該工作 - 沒有測試雖然

RewriteRule ^index/page/([^/.]+)$ index.php?page=$1 [L,QSA,NC] 
相關問題