2014-02-19 120 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] 
相关问题