转换301重定向到RewriteRule

时间:2019-03-12 14:31:05

标签: .htaccess redirect

建立新网站后,我的htaccess中有几个重定向,由于SEO原因,这些用户会将用户重定向到正确的页面。

所有301重定向均采用以下格式之一:

对于页面

Redirect 301 /page.html /new-page

对于产品

Redirect 301 /webshop/category-name/subcategory-name/detail/123/product-name.html /product/product-name

子类别是可选的,并非所有产品都在一个子类别中,但是它们至少具有1个类别。 123是产品ID,在所有产品上都不同。

对于类别

Redirect 301 /webshop/category-name/subcategory-name /category/category-name

子类别是可选的。

效果很好,但是由于该网站可以通过2个域(荷兰语和英语站点)访问,因此只有在域为dutchdomainenglishdomain时,这些重定向才有效。

因此,我了解了rewriteEngine,rewriteCond和rewriteRule并尝试了以下方法:

RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.dutchdomain\.nl [NC]
RewriteRule /faq.html /faq/ [L,R=302]

但这不起作用。如何在域条件下工作? 有没有一种方法可以通过常规表达式做到这一点,所以我只有几行,而不是现在的1668行?

我使用正则表达式webshop (*.+\)\替换了旧网站站点地图中产品的网址。页面的url和类别的I手动替换。

0 个答案:

没有答案