htaccess 301重定向到新页面不起作用

时间:2019-06-04 20:01:19

标签: apache .htaccess tomcat

我已将60 301重定向从旧的URL重定向到新的URL。我在每个页面上所做的语法如下:

Redirect 301 "http://www.olddomain.com/product/foo" "https://newdomain.com/product/bar"

当我转到旧页面"http://www.olddomain.com/product/foo"时,我被重定向到新页面,但没有重定向到我定义的URL:"https://newdomain.com/product/bar"。我被重定向到"https://newdomain/product/foo"

因此重定向到域是正确的,但是URL上的子页面是旧页面,而不是新页面。

有人知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

您无法在Redirect指令中匹配域名。

我建议使用mod_rewrite规则,该规则应放置在所有其他规则之前

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(?:www\.)?olddomain\.com$ [NC]
RewriteRule ^product/foo/?$ https://newdomain.com/product/bar [L,NC,R=301]

请确保这是最重要的规则,并在全新的浏览器中对其进行测试,以避免获取旧的缓存。