リクエストに foo/foofile.txt がある場合に、URL をhttp://subdomain.example.com/foo/foofile.txtからhttp://example.com/foo/foofile.txtに書き換える条件を作成しようとしています 。初期化。誰かが私を正しい方向に向けることができれば、あらゆる助けをいただければ幸いです...
よろしくお願いします、B
リクエストに foo/foofile.txt がある場合に、URL をhttp://subdomain.example.com/foo/foofile.txtからhttp://example.com/foo/foofile.txtに書き換える条件を作成しようとしています 。初期化。誰かが私を正しい方向に向けることができれば、あらゆる助けをいただければ幸いです...
よろしくお願いします、B
これは、特定のファイルについて、特定のサブドメインをメイン ドメインにリダイレクトしています。
v2 と v3 のどちらのバージョンの isapi_rewrite を使用していますか?
これは v3 を想定しています:
RewriteCond %{HTTP:Host} ^subdomain\.(.*)$
RewriteRule ^(/foo/foofile3\.txt)$ http://%1$1 [NC,R=301]
RewriteCond は、サブドメイン (およびドット) で始まるホストをテストし、書き換えルールの便宜上、残り (example.com) をキャプチャします。そこに特定の example.com を配置することもできますが、これにより、より一般的なものになります。
次に、RewriteRule は特定の /foo/foofile3.txt を探し、それをキャプチャします (これもルールで繰り返さないための便宜のためです)。結果には、条件 (example.com) でのキャプチャの %1 と、ルール (/foo/foofile3.txt) でのキャプチャの $1 があります。
NC は大文字と小文字を区別しません。R=301 は永続的なリダイレクトです。
v3 では、クエリ文字列パラメーターが自動的に処理されるため、ファイルの後にあるものはすべて保持されます。
もう少し複雑にする他の可能性は、サブドメイン、または 1 つの特定のファイルではなくファイル名のパターンです。
ルールを正しく取得している間、ブラウザが試行をキャッシュすることに問題がありました。そのため、ルールを変更しても、ブラウザーは以前のリダイレクトをキャッシュしていました。私の簡単な修正は、新しい URL のファイル名を数えることでした: foofile2、foofile3 (3 回目の試行で取得したと思います...)。毎回ブラウザのキャッシュをクリアすることもできました。これはより迅速でした。