0

IIS7/VS2008 にいくつかのリダイレクト ルールを適用する必要があり、その展開方法について質問があります。私たちはWebアプリケーションではなくWebサイトを持っているため、他のSOの質問のほとんどは私にとって役に立ちませんでした.

ウェブサイトで以下のようなルールを適用するには:

    <rewrite>
       <rules>
       <clear />
          <rule name="Redirect rule1 for Static404Redirects">
            <match url=".*" />
            <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
               <add input="{Static404Redirects:{REQUEST_URI}}" pattern="(.+)" />
             </conditions>
             <action type="Redirect" url="{C:1}" appendQueryString="false" />
           </rule>
        </rules>
    </rewrite>
  1. Bin フォルダーには、websitename .dll はありません。Ajaxtoolkit のような他のいくつかの dll だけです。
  2. Web サイトである dll/assembly/GAC が必要ですか?
  3. ルール部分のIIS UIを使用せずに、テストサーバーのweb.configを本番環境にコピーするだけで、動作するはずです。
  4. また、web.config の変更後にアプリケーションを IIS から再起動する必要がありますか? または、web.config を保存すると、新しい変更が自動的に有効になりますか?

これは正しいです?または、他に何かする必要がありますか?web.config の変更により、アセンブリの変更/dll/バージョンや、最初に考えるべきその他の変更が行われるのではないかと心配しています。私がそのウェブサイトプロジェクトに言及したように、VS2008 が Prod にインストールされていません。基本的に、私は自分が何をしているのかを確実に知りたいと思っています。

ありがとう!

4

1 に答える 1

1

実際にIIS7を使用していると仮定すると(私の知る限り、Server 2008にIIS6をインストールすることはできません)、上記のコードはIIS7 Rewrite Moduleで使用される構文です。これは拡張機能であり、IIS では既定ではインストールされません。各サーバーに個別にインストールする必要があります。

1 + 2) Web サイト (Web アプリケーションとは対照的に) は、コンパイル済みまたは未コンパイルのいずれかでデプロイできます。サイトがコンパイルされている場合、サイトで使用されるオブジェクトを構築するためのコードを含む 1 つ以上の dll ファイルが bin ディレクトリにあり、aspx ページのプレースホルダー ファイルがあります。コンパイルされたサイトの利点は、特に「コールド スタート」 (サイトがサーバー上のメモリに保持されていない場合) から、より高速に実行されることです。サイトがコンパイルされていない場合、コードを含む .aspx.cs/.aspx.vb ファイルがあるか、または

<script runat="server"> // code here </script> 

.aspx ファイル自体内のタグ。

3) IIS GUI は、web.config ファイルに配置されるルールを生成する簡単な方法です。サーバー間でのファイルのコピーは、開発環境からライブ環境へのコピーと同様に機能するはずです (接続文字列などをライブ環境に適したものに変更することに関する通常のルールが適用されます)。一部の開発者は、開発サーバーまたはローカル マシンでルールを作成し、この方法でデプロイします。必要に応じて、IIS GUI にまったく触れる必要はなく、ルールをコードで記述するだけです。ルールを機能させるには、各サーバーに IIS 7 Rewriter モジュールをインストールする必要があります。

4) web.config ファイルを保存または「タッチ」すると、アプリケーションが強制的に再起動されます。処理中のセッション データは失われますが (マイナスとして)、ルールはすぐに有効になるはずです。IIS のリセットは必要ありません。

新しいルールを追加するために web.config を変更しても、属性と XML 構文が有効なままである限り (アプリケーション キーまたは接続文字列の変更または削除、ターゲット フレームワーク、カスタム エラー、またはデバッグ モードは明らかにすべてサイトに影響します。ただし、再発行する必要はありません。XML は構文エラーで意図的に壊れやすいため、最初に非ライブ サイトで変更をテストすることを強くお勧めします。

于 2013-01-16T23:22:16.870 に答える