“双向”重写

所以,我试图做到这一点:

我们有一个url/brand/new-inventory.php 。 这是我们网站内的物理文件。 我想要的是/brand/new 。 现在很简单 我只需要添加RewriteRule ^brand/new$ brand/new-inventory.php [L,QSA]

现在,我想要设置和我一直在挣扎是这样的:

我们需要/brand/new-inventory.php被别人查看redirect/brand/new所以我们有一致的url和什么不是。

但是,当我尝试RewriteRule ^brand/new-inventory.php$ brand/new [R=301,L] Firefox开始抱怨redirect循环永远不会结束。

如何重写一个页面来响应不同的URL,并将旧的URLredirect到新的?

有这样的方式:

 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从浏览器收到的原始请求。 这个变量的值不会随着其他重写规则的应用而改变。