为了我们公司的 SEO 需求,我们需要通过 301 将一些 SEO URL 更改为另一个 URL。
示例:
/seo/keywords-1-2-3/
到 /seo/mynew301page-1-2-3/
是否有一些 Apache 重写规则可以指定某些 URL 应该重定向到新的 URL?
最佳答案
就这么简单:
Redirect 301 /seo/keywords-1-2-3/ /seo/mynew301page-1-2-3/
上面的代码会将所有以 /seo/keywords-1-2-3/
开头的 URL 请求重定向到 /seo/mynew301page-1-2-3/
。 例如: /seo/keywords-1-2-3/something?say=hello
==> /seo/mynew301page-1-2-3/something?say=hello
如果一定要精准匹配(只有/seo/keywords-1-2-3/
而不是/seo/keywords-1-2 -3/something
,然后使用这个:
RedirectMatch 301 ^/seo/keywords-1-2-3/$ /seo/mynew301page-1-2-3/
相同,但使用 mod_rewrite:
RewriteEngine On
# broad (base) match
RewriteRule ^/seo/keywords-1-2-3/(.*)$ /seo/mynew301page-1-2-3/$1 [R=301,L]
# exact match
RewriteRule ^/seo/keywords-1-2-3/$ /seo/mynew301page-1-2-3/ [R=301,L]
关于apache - 在同一站点上从一个 SEO 友好 URL 重写为另一个 SEO 友好 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6960602/