htaccess 代码将用户转移到新网站的指南
guidelines for htaccess code to transition users to new website
假设我有一个包含 10 个网页的旧网站,我想弃用它并将访问者转移到一个包含 100 个网页的新网站。
旧网站的两个网页直接映射到新网站上的两个对应网页。旧网站上的所有其他页面都应转到新网站的主页。如何设置?
我知道我可以使用旧网站 public_html 文件夹中的 .htaccess
来为各个页面创建一些永久重定向规则。所以对于需要一对一映射的两个页面,我可以这样做:
Redirect 301 /oldfile1.htm http://www.example.net/newfile1.htm
Redirect 301 /def/oldfile2.htm http://www.example.net/123/456/newfile2.htm
但是旧网站上的所有其他网页呢?这是我对 .htaccess
的了解不足的地方。 .htaccess
到达上述重定向之一时是否停止执行?如果是这样,那么也许我只是将以下代码放在上面的代码之后以捕获剩余的页面?
Redirect 301 / http://www.example.net/
或者,别的什么?此外,直接上方的重定向是否会将它看到的所有网页映射到新网站的主页(我假设是这样),或者新网站上匹配的 directory/webpage 页面? -- 也就是说,我不希望出现 http://www.olddomain.com/abc/Oldfile1234.html takes users to http://www.example.net/abc/Oldfile1234.html on the new website (rather, it should take users to http://www.example.net) 的情况,因为大多数网页不会一对一映射。
最后,在旧网站 public_html 目录的 .htaccess
文件中,如何计算来自 https
与 http
和 [=18= 的用户] 与 non-www
个网址?
我希望人们对这类事情有共同的策略,因为它应该是相当普遍的,所以我不必重新发明一个。
您应该使用 RedirectMatch
通过正则表达式进行精确匹配。您可以将这些规则放在根 .htaccess 中:
RedirectMatch 301 ^/oldfile1\.htm$ http://www.example.net/newfile1.htm
RedirectMatch 301 ^/def/oldfile2\.htm$ http://www.example.net/123/456/newfile2.htm
RedirectMatch 301 ^ http://www.example.net/
假设我有一个包含 10 个网页的旧网站,我想弃用它并将访问者转移到一个包含 100 个网页的新网站。
旧网站的两个网页直接映射到新网站上的两个对应网页。旧网站上的所有其他页面都应转到新网站的主页。如何设置?
我知道我可以使用旧网站 public_html 文件夹中的 .htaccess
来为各个页面创建一些永久重定向规则。所以对于需要一对一映射的两个页面,我可以这样做:
Redirect 301 /oldfile1.htm http://www.example.net/newfile1.htm
Redirect 301 /def/oldfile2.htm http://www.example.net/123/456/newfile2.htm
但是旧网站上的所有其他网页呢?这是我对 .htaccess
的了解不足的地方。 .htaccess
到达上述重定向之一时是否停止执行?如果是这样,那么也许我只是将以下代码放在上面的代码之后以捕获剩余的页面?
Redirect 301 / http://www.example.net/
或者,别的什么?此外,直接上方的重定向是否会将它看到的所有网页映射到新网站的主页(我假设是这样),或者新网站上匹配的 directory/webpage 页面? -- 也就是说,我不希望出现 http://www.olddomain.com/abc/Oldfile1234.html takes users to http://www.example.net/abc/Oldfile1234.html on the new website (rather, it should take users to http://www.example.net) 的情况,因为大多数网页不会一对一映射。
最后,在旧网站 public_html 目录的 .htaccess
文件中,如何计算来自 https
与 http
和 [=18= 的用户] 与 non-www
个网址?
我希望人们对这类事情有共同的策略,因为它应该是相当普遍的,所以我不必重新发明一个。
您应该使用 RedirectMatch
通过正则表达式进行精确匹配。您可以将这些规则放在根 .htaccess 中:
RedirectMatch 301 ^/oldfile1\.htm$ http://www.example.net/newfile1.htm
RedirectMatch 301 ^/def/oldfile2\.htm$ http://www.example.net/123/456/newfile2.htm
RedirectMatch 301 ^ http://www.example.net/