2012-08-17 100 views
3

我需要幫助巫婆htaccess 301重定向。htaccess如何重定向所有頁面,但不是根目錄

我有一個網站www.site.com,但我需要改變所有網頁www.newsite.com但我想不動www.site.com(對於網頁信息)

例:

www.site.com (not move) index of to put then a template or message 

www.site.com/2012/08/page.html move to www.newsite.com/2012/08/page.html 
www.site.com/tag/keyword/ move to www.newsite.com/tag/keyword/ 
www.site.com/category/general/ move to www.newite.com/category/general/ 

我該怎麼做?由於

回答

2

www.site.com主機啓用了mod_rewrite並通過httpd.conf的.htaccess,然後把這個代碼在你.htaccessDOCUMENT_ROOT目錄:

Options +FollowSymLinks -MultiViews 
# Turn mod_rewrite on 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} ^(www\.)?site\.com$ [NC] 
RewriteRule ^.+$ http://www.newsite.com%{REQUEST_URI} [L,R=301] 
+0

不錯,非常好。 謝謝! – 2012-08-17 02:49:50

+1

@anubhava:這個網站上總是我的救世主。不夠感謝你。 – 2016-02-10 22:04:45

3

你可以嘗試使用mod_alias中RedirectMatch強制在URI東西重定向。在site.com的文檔根目錄htaccess文件,添加:

RedirectMatch 301 ^/(.+)$ http://www.newsite.com/$1 

這將使它所以任何後http://www.site.com/會被重定向,但只是http://www.site.com/不會。但是,http://www.site.com/index.html得到重定向。如果這是一個問題,你可以使用mod_rewrite:

RewriteEngine On 
RewriteCond %{REQUEST_URI} !^/$ 
RewriteCond %{REQUEST_URI} !^/index.html$ 
# and whatever else you don't want redirected 
RewriteRule ^(.*)$ http://www.newsite.com/$1 [L,R=301] 
相關問題