0

在根级别的 .htaccess 文件中,我尝试了这个 301 重定向代码,它可以工作:-

redirect 301  /en/about/product.html  http://mydomain.com/shop?

但是,当我尝试复制句子时,对于其他页面,它总是以服务器错误 500 告终。

实际上我应该如何在 .htaccess 中包含 10 条重定向规则?

4

2 回答 2

0

尝试这个

RewriteEngine On
RewriteRule ^/en/about/product\.html?(.*)$ http://mydomain.com/shop/?$1 [R=301,L,S=1]

#other page

RewriteRule ^/en/about/product1\.html?(.*)$ http://mydomain.com/shop1/?$1 [R=301,L]
于 2013-04-15T06:26:27.860 回答
0

好吧,为了获得最佳可移植性,我建议您完全按照 Apachemod_alias文档中显示的方式键入指令,否则它们是正确的。

Redirect 301 /the_old_page.htm http://example.com/the-new-page.htm
Redirect 301 /the_old_page2.htm http://example.com/the-new-page2.htm
Redirect 301 /the_old_page3.htm http://example.com/the-new-page3.htm

现在,您可能不需要 50 条规则。这是一个示例,将您的示例 URL 视为真正的 URL:

RedirectMatch 301 ^/the_old_([^.]+)\.htm$ http://example.com/the-new-$1.htm

这会将表单的所有URL重定向"/the_old_<something>.htm""/the-new-<something>.htm"仅使用一个指令而不是 50 个指令。

如果您的旧 URL 具有这种共性,您可以利用它来减少您需要编写、测试和维护的重定向指令的数量。

希望能帮助到你..

于 2013-04-15T06:28:57.433 回答