htaccess将所有页面重定向到单页

时间:2010-08-19 14:44:48

标签: apache .htaccess redirect dns

我想使用htaccess文件将我的所有旧域请求重定向到我的新域。以下是我正在使用的内容,但如果页面不在新网站上则无法使用。例如,旧网站上的谷歌索引about.htm,但在新网站上它不存在。我想在所有情况下都去根。我知道这不适合seo,但我不想要任何404。有什么建议吗?

Redirect 301 / http://www.thenewdomain.com/

5 个答案:

答案 0 :(得分:63)

如果您的目标是将所有页面重定向到单个维护页面(因为标题也可以建议),请使用:

RewriteEngine on
RewriteCond %{REQUEST_URI} !/maintenance.php$ 
RewriteCond %{REMOTE_HOST} !^000\.000\.000\.000
RewriteRule $ /maintenance.php [R=302,L] 

000%000 000应由your ip adress取代。

来源:

http://www.techiecorner.com/97/redirect-to-maintenance-page-during-upgrade-using-htaccess/

答案 1 :(得分:23)

您是否想让访问者访问old.com/about.htm转到new.com/about.htm?如果是这样,您可以使用.htaccess中的mod_rewrite规则执行此操作:

  

RewriteEngine on

     

RewriteRule ^(.*)$ http://www.thenewdomain.com/$1 [R=permanent,L]

答案 2 :(得分:14)

这会指示从旧主机到新主机的根目录的所有内容:

RewriteEngine on
RewriteCond %{http_host} ^www.old.com [NC,OR]
RewriteCond %{http_host} ^old.com [NC]
RewriteRule ^(.*)$ http://www.thenewdomain.org/ [R=301,NC,L]

答案 3 :(得分:5)

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www\.)?olddomain\.com$ [NC]
RewriteRule ^(.*)$ "http://www.thenewdomain.com/" [R=301,L]

答案 4 :(得分:0)

为当前不在您网站上的页面添加此内容...

ErrorDocument 404 http://example.com/

连同您的重定向301 / http://www.thenewdomain.com/一起,应该涵盖所有基础...

祝你好运!