301使用排除条件重定向(htaccess)

时间:2011-12-19 12:35:16

标签: .htaccess mod-rewrite redirect url-rewriting http-status-code-301

我目前正在将一个网站(商店)迁移到一个新域名,并在该网站上放置一个非商店版本(用wordpress制作)。目标是大多数网址重定向到新域,除了新网站的几个页面。我在stackoverflow上发现了其他帖子但不幸的是我似乎无法让它工作。任何帮助将不胜感激,谢谢Jason。

我需要排除的网址是: / (主页) /新闻及其帖子/新闻/姓名 /产品及其帖子/产品/后名 / offer及其帖子/优惠/姓名 /我们的理念 /我们的队伍 /我们的梦

这是我试过的:

<IfModule mod_rewrite.c>

RewriteEngine on

#Home
RewriteCond %{REQUEST_URI} !^/

#News
RewriteCond %{REQUEST_URI} !^/news(.*)

#Products
RewriteCond %{REQUEST_URI} !^/products(.*)

#Offers
RewriteCond %{REQUEST_URI} !^/offers(.*)

#Philosophy
RewriteCond %{REQUEST_URI} !^/our-philosophy(.*)

#Team
RewriteCond %{REQUEST_URI} !^/our-team(.*)

#Dream
RewriteCond %{REQUEST_URI} !^/our-dream(.*)

RewriteRule (.*) http://www.cotswold-fayre.co.uk/$1 [R=301,L]

</IfModule>



# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

1 个答案:

答案 0 :(得分:4)

尝试将以下内容添加到.htaccess文件

RewriteEngine on

#Home: Exclude the home Page
RewriteCond %{REQUEST_URI} !^/$ [OR]

#News: exclude anything that starts with /news, /products etc
RewriteCond %{REQUEST_URI} !^/(news|products|offers|our-philosophy|our-team|our-dream) [NC]

RewriteRule (.*) http://www.cotswold-fayre.co.uk/$1 [R=301,L]