2

ドメイン名 : http://www.newdomain.comhttp://sub.maindomain.comにリダイレクトしたい

.htaccess を次のように編集しました。

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !sub.maindomain.com$ [NC]
RewriteRule ^(.*)$ http://sub.maindomain.com/$1 [L,R=301] 

リダイレクトしますが、アドレス バーにhttp://sub.maindomain.comが表示されます。ヘルプ!http://www.newdomain.comが表示されるようにマスキングを行う方法。ありがとう

また、サブサイトhttp://sub.newdomain.comを作成したいと思います。.htaccess でそれを行う方法。

4

1 に答える 1

3

www.newdomain.comsub.maindomain.comが異なるホスト上にある場合sub.maindomain.com、ブラウザの URL アドレス バーに表示されている間にコンテンツを提供する唯一の方法は、ブラウザに代わってwww.newdomain.comからコンテンツを取得することです。ブラウザに関する限り、newdomain のコンテンツを見ているからです。sub.maindomain.com

これを行うには、apache またはスクリプトを使用してプロキシを設定します。www.newdomain.comApache を使用する場合、ドメインの vhost 構成にアクセスする必要があります。次のように設定できます。

ProxyPassMatch ^(.*)$ http://sub.maindomain.com$1

タイムアウトと再試行を微調整するために、このディレクティブを渡すことができるフラグの詳細については、mod_proxy ドキュメントを参照してください。

php スクリプトをプロキシにセットアップする場合は、すべてのリクエストをこの php スクリプトにルーティングする必要があるため、www.newdomain.comドキュメント ルートの htaccess ファイルに次を追加します (この php スクリプトが と呼ばれると仮定しますproxy.php):

RewriteEngine On
RewriteCond %{REQUEST_URI} !^/proxy.php
RewriteRule ^(.*)$ /proxy.php?url=$1 [L,QSA]

次に、でクエリ文字列proxy.phpを探し、そのページをロードして、ブラウザに出力します。url

ただし、両方のドメインを同じホストに向けることができれば、これはすべてはるかに簡単になります。

于 2012-07-23T22:11:54.757 に答える