3

最近我用 php 建立了一个网站,但他们拥有的旧网站都是 HTML 格式的。所以现在我不知道使用 .htaccess 将所有旧链接重定向到新站点(可能将所有带有 HTML 的链接重定向到主域)的最佳方法是什么,最佳实践是什么?

这是我尝试过的,但该网站对许多重定向循环说:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.de
RewriteRule (.*) http://www.example.de/$1 [R=301,L]
RedirectMatch "\.html$" http://www.example.de 

所以首先我们把所有非www的链接都重定向到www,然后当页面有.html的时候就重定向到主站点。

4

2 回答 2

1

选项 1:将所有旧链接重定向.html到新站点的 /

RewriteEngine On

RewriteRule \.html$ / [L,R=301,NC]

选项 2:如果.html文件名和.php文件名相同,则将所有旧.html链接重定向到新站点的.php/

RewriteEngine On

RewriteRule ^(.+?)\.html$ /$1.php [L,R=301,NC]
于 2013-10-17T11:55:07.447 回答
1

取决于,如果它是您需要指向的新域,请从旧域添加一个域指针指向新域,这将在处理重定向的服务器中解决,这是最有效的方法。

这将比 .htaccess 更好地工作,因为它更快并且不会导致第二次初始页面加载(由于重定向)。

如果您无权访问服务器或域指针,如果 php 在旧服务器上运行,则可以将 index.html 设置为 index.php 文件,从这里简单地说:

header('Location: http://www.newdomain.com/');

这将自动重定向。

希望这对您有所帮助。

- 席德

于 2013-10-17T11:14:23.870 回答