首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mod_rewrite和新的url结构存在的问题

mod_rewrite和新的url结构存在的问题
EN

Stack Overflow用户
提问于 2015-03-21 15:56:54
回答 1查看 28关注 0票数 1

我想在我的网站上建立新的网址结构:

/page.php?id=1 -> /服务条款

/page.php?id=2 -> /faq

所以我在htaccess做了:

代码语言:javascript
复制
RewriteRule ^terms-of-service /page.php?id=1 [L,NC,QSA]

而且很好,当我去mysite.com/服务条款时,我可以看到我的第一页,但我也想把301从旧地址重定向到新地址。当我试图这样做的时候:

代码语言:javascript
复制
RewriteCond %{QUERY_STRING} ^id=1$
RewriteRule ^page.php$ terms-of-service? [L,R=301,NC]
RewriteRule ^terms-of-service /page.php?id=1 [L,NC,QSA]

我的浏览器中有一个“无效重定向”错误。我怎么才能修好它?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-21 18:00:03

您的规则将导致重定向循环。您需要在这里使用%{THE_REQUEST}。以这种方式:

代码语言:javascript
复制
RewriteEngine On
RewriteBase /

RewriteCond %{THE_REQUEST} /page\.php\?id=1\s [NC]
RewriteRule ^ terms-of-service? [L,R=301]

RewriteRule ^terms-of-service/?$ page.php?id=1 [L,NC,QSA]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29184728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档