0

1 つの Web サーバー上にある複数のサイトに ISAPI_Rewrite ルールを設定するための明確で簡潔なドキュメントを見つけるのに苦労しています。各サイトには、独自のルール セットを概説する独自の httpd.ini ファイルが必要です。さらに、各サイトは異なるバージョンの ISAPI_Rewrite モジュールを使用している場合があります (これを考慮する必要があります)。IIS 6.0 を使用しています。

これを行う方法について何か提案はありますか?

どんな助けでも大歓迎です!

ありがとう、

-トム

4

1 に答える 1

3

httpd.iniについて言及しているので、isapi_rewritev2を使用していると思います。IIS 6でv3にアップグレードすることをお勧めします(IIS 7マシンの場合、ヘリコンは私が試したことのない「Ape」を強くお勧めします)。

これは、isapi_rewritev3の有料バージョンを想定しています。フリーウェアのLiteバージョンはこの回答では機能しません。

v3では、ファイルの名前はhttpd.iniではなく.htaccessになります。

各Webサイトには、独立したルールを持つ独自の.htaccessファイルを含めることができます。各ファイルを各Webサイトのルートフォルダーに配置します。

モジュールの異なるバージョンについて、2つのバージョンをインストールしたままにしようとはしていませんが、それが可能かどうかはわかりません。代わりに、v3にはRewriteCompatibility2ディレクティブがあり、各.htaccessファイルに含めるか省略することができます。これにより、一部のWebサイトではv2ルールを使用できるようになり、他のサイトではv3ルールを使用できるようになります。

どうやらこれはv3をv2と互換性のあるものにしますが、構文が100%一致するわけではありません。これらは、既存のルールの変換ツールを提供します。何も変わっていないことを思い出しているようです。主な違いは、クエリ文字列パラメータの処理です。これは、v2ルールでは明示的ですが、v3では個別に処理されます。(v3に完全に変換されると、ルールははるかに単純になります。)

上記は問題を解決するはずですが、より複雑な構成もあります。

サブディレクトリには、親ファイルの後に実行される独自の.htaccessファイルを含めることもできます。「現在の」データフォルダのポインティングを処理するために、これを1回実行しました。

VirtualHost、Directory、Location、Filesのディレクティブもあります。ここでの概要:http ://www.helicontech.com/isapi_rewrite/doc/context.htm 。私はこれを数回読まなければならなかったので、少し明確な説明のために個々の指令を読んでください。

于 2011-07-04T16:39:30.047 に答える