1

サブドメインがあり、次のように言いましょう:

cloud.mygizmo.com

しかし、誰かがこの URL に移動したときに、実際にアクセスしてもらいたいのは次のとおりです。

11.22.33.44/cloud

とはまったく異なるホスト上にあり、mygizmo.com移動できません。

.htaccessはこれを持っています:

RewriteEngine on
# Use PHP5.4 as default
AddHandler application/x-httpd-php54 .php
RewriteCond %{HTTP_HOST} ^cloud\.mygizmo\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.cloud\.mygizmo\.com$
RewriteRule ^/?$ "http\:\/\/11\.22\.33\44\/cloud" [L]

これはリダイレクトを行いますが、それでもユーザーのブラウザーのアドレス バーを変更します。

cloud.mygizmo.comユーザーが実際に移動し11.22.33.44/cloudた場合にアドレスバーにまだ表示されるようにするにはどうすればよいcloud.mygizmo.comですか?

4

3 に答える 3

1

できません。リダイレクトはそのようには機能しません。

代わりにデータをプロキシすることもできます (これは効率が悪く、帯域幅コストが増加します)。

于 2013-09-05T16:46:29.577 に答える
1

mod_proxy がインストールされている場合は、Pフラグを使用してブラウザの代わりにプロキシをリバースできます。

RewriteEngine on
# Use PHP5.4 as default
AddHandler application/x-httpd-php54 .php
RewriteCond %{HTTP_HOST} ^cloud\.mygizmo\.com$ [OR]
RewriteCond %{HTTP_HOST} ^www\.cloud\.mygizmo\.com$
RewriteRule ^/?$ "http\:\/\/11\.22\.33\44\/cloud" [L,P]

ProxyPassまたはを使用してプロキシをリバースすることもできますがProxyPassMatch、これらは vhost/server 構成でのみ機能します。

cloud.mygizmo.com/ vhost で次のwww.cloud.mygizmo.comように言えます。

ProxyPass / http://11.22.33.44/cloud

そして、 に対するすべてのリクエストがホストcloud.mygizmo.comにプロキシされhttp://11.22.33.44/cloudます。

ProxyPassのように機能することに注意してください。Redirectパス ノード/とがリンクされています/cloud。したがって、誰かが次の場所に行くとします。

http://cloud.mygizmo.com/foo/bar

それらは次のようにリバース プロキシされます。

http://11.22.33.44/cloud/foo/bar

それが望ましくない場合は、次を使用しますProxyPassMatch

ProxyPassMatch ^/$ http://11.22.33.44/cloud

または、書き換えルールを同じように動作させたい場合は、リクエスト URI をキャプチャし、後方参照を使用してターゲットに渡す必要があります。

RewriteRule ^/?(.*)$ http://11.22.33.44/cloud/$1 [L,P]
于 2013-09-05T16:46:41.420 に答える
1

おそらく理想的な解決策ではありませんが、かなり巨大な iframe であるページを構築し、iframe 内にコンテンツをロードすることはできます...

編集:Blue Hostがコントロールパネル(別名Masked Forward)でパークドメインを許可しているかどうかを確認してください。これがあなたの望むものだと思います。

于 2013-09-05T17:14:05.990 に答える