0

我想设置一些301s,我意识到路径得到的重定向如果有什么后它是“子目录”这是一个cms站点,所以他们不是实际的目录。301重定向后的任何目录

但例如

Redirect 301 /products http://example.com/products/all 

也被重定向/产品/类别和/产品/分类/分类名

我在这里失去了一些东西?

回答

0

Redirect指令可以被视为“虚拟”链接两个URL路径节点。所以:

Redirect /A /B 

就像shortcuting的文件夹中的文件夹B.因此,这将包括所有文件夹中的为好。

如果你想被重定向只是一个特定的网址,用RedirectMatch

RedirectMatch 301 /products/?$ http://example.com/products/all 
1

这就是Redirect指令的工作原理。它们有效地移动完整的目录层次结构,即将原始路径附加到目标URL后指定的子目录或文件。

如果这是你不想要的副效应,切换到RedirectRule作为

RedirectRule ^products/?$ /products/all [R=301,L] 

我假设你在同一站点中的重定向。如果没有,您可以像以前一样指定完整的目标网址。

RedirectRule ^products/?$ http://example.com/products/all [R=301,L]