微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

正则表达式 – “双向”重写

所以,我正在努力实现这个目标:

我们有一个URL /brand/new-inventory.PHP.这是我们网站内的物理文件.
我希望它是/品牌/新.现在这很容易.我不得不添加的是RewriteRule ^ brand / new $brand / new-inventory.PHP [L,QSA].

现在,我想要设置并且我一直在努力的是这个:

当有人查看时,我们需要/brand/new-inventory.PHP重定向到/ brand / new所以我们有一致的URL和什么不是.

但是,当我尝试RewriteRule ^ brand / new-inventory.PHP $brand / new [R = 301,L]时,Firefox开始抱怨永远不会结束的重定向循环.

如何重写页面以响应不同的URL,并将旧URL重定向到新URL?

这样做:
RewriteCond %{THE_REQUEST} \s/+brand/new-inventory\.PHP[/\s?] [NC]
RewriteRule ^ /brand/new [R=302,L]

RewriteRule ^brand/new$/brand/new-inventory.PHP [L,NC]

差异是使用%{THE_REQUEST}来表示Apache从您的浏览器收到的原始请求.此变量的值不会随着其他重写规则的应用而改变.

原文地址:https://www.jb51.cc/regex/356995.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐