2016-06-27 9 views
1

sitename.domからsitename.dom2へのリダイレクトを非表示にする必要があります。正確なURLだけを書き換えるにはどうすればいいですか

RewriteCond %{HTTP_HOST} ^sitename.dom 
RewriteRule ^(.*) http://sitename.dom2/$1 [P] 

、それが完璧に動作します:今、私が使用するために

。しかし。ため私のウェブサイト上の多言語にFrontPageは次のパスがあります。ユーザーはsitename.domを呼び出したときに

sitename.dom2/lang 

のthatsをなぜ彼はsitename.dom2/に(隠れて)リダイレクトされていると、彼は404ページを取得しています。

正確なリクエストに対してのみ正確なリダイレクトを行うにはどうすればよいですか?sitename.domこれ以上は必要ありません。

ノー運と

RewriteCond %{HTTP_HOST} ^sitename\.dom$ 
RewriteCond %{QUERY_STRING} ^$ 
RewriteRule ^(.*) http://sitename.dom2\/lang [P] 

をしようとしました。

ところで、ウェブサイト内の言語のサブパスはまったく影響しません。単にあなたの最初のRewriteRuleディレクティブで/langを追加sitename.dom/page

答えて

0

私は、他のすべての前に、単一のリダイレクトを追加する必要がありました。このルールでは、dom1の代わりにdom2を使用します。

RewriteEngine On 

#redirect front page only: 
RewriteCond %{HTTP_HOST} ^sitename\.dom2$ [OR] 
RewriteCond %{HTTP_HOST} ^www\.sitename\.dom2$ 
RewriteRule ^/?$ "http\:\/\/sitename\.dom2/\lang" [L] 

#redirect all other pages: 
RewriteCond %{HTTP_HOST} ^sitename\.dom2 
RewriteRule ^(.*) http://sitename\.dom1\/$1 [P] 
0

ほど良くsitename.dom/lang/page作品は:

RewriteEngine On 
RewriteCond %{HTTP_HOST} ^sitename.dom$ 
RewriteRule^http://sitename.dom2/lang%{REQUEST_URI} [P] 
+0

おかげで、それはうまくいきませんでした。ここで

はソリューションです。私は前にそのようなことを試したと思います。今私はcitename.domとcitename.dom/langの両方で404を取得しています。フロントページにアクセスできない – Andriy

関連する問題