1

我正在尝试设置一个简单的 mod_rewrite 来重定向一些打开的购物车链接,这些链接在导入完成时会被破坏。本质上,信息页面的漂亮 url 不会去到他们应该去的地方,所以我计划使用 .htaccess 覆盖它们

无论如何,我有这样的设置:

RewriteEngine On
RewriteBase /myshop.co.uk/
RewriteRule ^about-us/why-shop/?$  index.php?route=informationin/formation&information_id=7  [L]

所以据我了解以下

www.myshop.co.uk/about-us/why-shop

将显示页面内容

index.php?route=information/information&information_id=7

但是,当我对此进行测试时,它只会返回

www.myshop.co.uk/index.php

之后的所有内容,包括 ? 似乎被忽略了,首先我认为我必须逃避它,但在阅读了各种帖子之后,我似乎不需要这样做。

另外,当我在这里时,是否可以指定包含子目录的 RewriteBase?例如

RewriteBase /development/myshop/
4

1 回答 1

1

之后的所有内容,包括 ? 似乎被忽略了,

不,这是正确的,它是根据您的规则附加完整的 URL。唯一的问题是,由于您没有使用R标志,因此此重定向是静默发生的。

如果您R在规则中添加标志,那么您会注意到浏览器中显示了完整的 URL:

RewriteRule ^about-us/why-shop/?$  index.php?route=informationin/formation&information_id=7  [L,R]

参考:Apache mod_rewrite 简介

于 2013-10-02T09:55:17.097 回答