2016-04-13 9 views
1

古いサイトのホームを新しいサイトのホームにリダイレクトしたいのですが、すべてのサブページを新しいサイトのページ検索にリダイレクトする必要があります。 簡単に言えば:(Wordpress).htaccessセレクティブリダイレクト

www.oldsite.it - >http://newsite.it/search?q=whatever

から www.oldsite.it/whatever>http://newsite.it

私は条件を厳密に、両方とも生きたい。 私は彼らを別々に働かせるために達成しました。 私のコードは次のとおりです。

<IfModule mod_rewrite.c> 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_HOST} oldsite\.it/$ 
RewriteRule ^(.*)$ http://newsite.it/search?q=$1 [R=301,L] 

RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 

RewriteRule . /index.php [L] 
</IfModule> 

どのように機能させることができますか?

RewriteEngine On 
RewriteBase/
#1)redirect "oldsite.it" to "newsite.it# 
RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.it$ 
RewriteRule ^$ http://newsite.it [NC,L,R]  
#2)redirect "oldsite.it/foobar" to "newsite.it/search?q=foobar# 
RewriteCond %{HTTP_HOST} ^(www\.)?oldsite\.it$ 
RewriteRule ^(.+)$ http://newsite.it/search?q=$1 [QSA,NC,R,L] 

クリアこれらのルールをテストする前に、ブラウザのキャッシュ: おかげ

答えて

0

あなたがしようと、新しい場所に古いホームページや古いURLをリダイレクトするには、ここ2つの、条件付きルールが必要です。

リダイレクトを永続的にするには、ルールが機能していることが確認されたら、両方のルールでRをR = 301に変更します。

+1

完璧!今私がしたいように動作します。ありがとう。 –

関連する問題