我有一个小问题需要.htaccess
我想将所有旧网站重定向到新网站。 但是,某些链接必须重定向到新网站的特定 URL 以及新域主页上的所有其他链接。 例如:
这
url 1 - www.old.com/category-A/article-name-A
url 2 - www.old.com/category-B/article-name-B
url 3 - www.old.com
url 4 - www.old.com/subUrl1
url 5 - www.old.com/subUrl2
到
url 1 - www.new.com/article-new-A
url 2 - www.new.com/category-B/article-new-B
url 3 - www.new.com
url 4 - www.new.com
url 5 - www.new.com
对于前两个链接,我使用此代码并且它完美地运行
redirect 301 /category-A/article-name-A www.new.com/article-new-A
redirect 301 /category-B/article-name-B www.new.com/category-B/article-new-B
问题出在其他人身上。 我希望网站的所有其他子域都被重定向到新的主页,而没有 URL的第二部分( / subUrl1 ),因此您没有 404消息。
如果我使用
redirect 301 / www.new.com
我有这个结果:
url 3 - www.new.com
url 4 - www.new.com/subUrl1 (404 page)
url 5 - www.new.com/subUrl2 (404 page)
如何为所有其他链接创建常规重定向?
谢谢。
编辑: 添加问题
我有一个包含更多链接类型的子文件夹:
domain.com/sub/link1
domain.com/sub/link2
domain.com/sub/link3
domain.com/sub/link4
domain.com/sub/link5
domain.com/sub/link6
如果我想某些链接有自定义重定向,而所有其他重定向到主页?
示例:
redirect 301 domain.com/sub/link1 /sub2
redirect 301 domain.com/sub/link2 /sub3/article1
redirect 301 domain.com/sub/link3 /sub2
other domain.com/sub/ to homepage
答案 0 :(得分:0)
您可以使用以下内容:
#redirect the main site
redirect 301 /category-A/article-name-A www.new.com/article-new-A
redirect 301 /category-B/article-name-B www.new.com/category-B/article-new-B
#redirect any other domain
RewriteEngine on
RewriteCond %{HTTP_HOST} !^(www\.)?olddomain.com$
RewriteRule ^(.*)$ http://newdomain.com [L,R,NE]
rewriteRule会将所有其他域名(www.olddomain.com除外)重定向到http://newdomain.com