私がやろうとしているのは、URLが入力されたときにexample.com/test
として表示されるように書き換えルールを設定することです。
ですから、例えば、可能であればこれをやろうとしています。
site.example.com
のCNAMEをsite.devexample.com
を指すように設定しました(ベンダー側の開発リモート環境)
ユーザーがsite.example.com
にアクセスすると、URLはこれらの行に沿ってexample.com/test
に書き換えられます。
これまでのところ、機能していないようですが、site.example.com
にアクセスすると、そのままです。
# rewrite rules for site.example.com
RewriteCond %{http_Host} ^site\.example\.com [NC,OR]
RewriteCond %{http_Host} ^www\.site\.example\.com [NC]
RewriteRule $ http://example.com/test/ [R,L]
リバースプロキシを実行して、そこから書き直す必要がありますか?
編集:申し訳ありませんが、もう少し詳しく説明する必要がありました。 site.example.comはtest.com(会社A)が所有しています。そこで、CNAMEをsite.devEnvironment.com(companyB.com)を指すように変更しました
test.com/testはサーバーとディレクトリであり、URLをsite.example.comではなくtest.com/testに書き換えようとしています。
リダイレクトはhttpd.confファイルで設定されていますが、これが役立つかどうかはわかりません
Rewritecondまたはrewritemapの正規表現が一致していないと推測します。私はそれらが滑りやすいことを発見しました。
非常に詳細なmod_rewriteロギングがあることを確認してください(Apache 2.4 set LogLevel 、Apache 2.2 set RewriteLog )Webサーバーの管理者でない場合、これはおそらく役に立ちません君は。
次のようなリダイレクトを試してください。
RewriteRule ^foobar /clams/%{HTTP_Host}/fish [R,L]
foobar
は意味のない場所であるため、実際のトラフィックに干渉することはありません。ブラウザでfoobar
を指定すると、意味のない別の場所にリダイレクトされてエラーが発生しますが、URLバーには%{HTTP_Host}
varに含まれています。 (アサリと魚は引用符として機能するので、%{HTTP_Host}
スラッシュまたは空白、その他のトリッキーな文字が含まれています。表示されます。)
(.htaccess互換性のためにfoobarから削除/ thnx @ w3dk)
私がやったことは、proxypass/testsite.example.comを設定することです。
サーバーが/ testを確認すると、site.example.comからコンテンツが読み込まれるようにします。