将旧链接(HTML网站)重定向到新页面(PHP网站)

时间:2013-10-17 11:10:11

标签: .htaccess redirect http-status-code-301

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

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

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重定向到主站点时。

2 个答案:

答案 0 :(得分:1)

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

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

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

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

这将自动重定向。

希望这有助于你。

- Sid

答案 1 :(得分: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]