ASP.NET の構成

ASP.NET 構成システムは、ASP.NET アプリケーションを最初に配置するときに構成設定を定義できる、拡張性のあるインフラストラクチャを備えています。このインフラストラクチャにより、稼動中の Web アプリケーションや Web サーバーに与える影響を最小限に抑えながら、いつでも構成設定を追加したり、改訂したりできます。

ASP.NET 構成システムには、次の利点があります。

  • 構成情報は XML ベースのテキスト ファイルに保存されます。ASP.NET 構成ファイルの作成や編集には、任意の標準的なテキスト エディタや XML パーサーを使用できます。
  • 複数の構成ファイルを、Web.config という同一の名前で、ASP.NET Web アプリケーション サーバーの複数のディレクトリに保存できます。各 Web.config ファイルの構成設定は、ファイルが配置されているディレクトリと、その下にあるすべての子ディレクトリに適用されます。子ディレクトリの構成ファイルでは、親ディレクトリから継承した構成情報だけでなく、ファイル自体の構成情報も提供できます。子ディレクトリの構成設定は、親ディレクトリで定義された構成設定をオーバーライドまたは変更できます。*systemroot\*Microsoft.NET\Framework\versionNumber\CONFIG\Machine.config という名前のルート構成ファイルには、Web サーバー全体の ASP.NET 構成設定が用意されています。
  • 実行時には、ASP.NET は階層的な仮想ディレクトリ構造に配置された各 Web.config ファイルの構成情報を使用し、一意な URL リソースのそれぞれについて、構成設定のコレクションを計算します。算出された構成設定はキャッシュされ、リソースに対するその後のすべての要求で使用されます。継承はディスク上のリソースへのファイル システム パス (物理パス) ではなく、着信した要求のパス (URL) によって定義されます。
  • ASP.NET は、構成ファイルの変更を検出し、その変更の影響を受ける Web リソースに対して新しい構成設定を自動的に適用します。変更を有効にするために、サーバーを再起動する必要はありません。階層的に編成された各構成設定は、階層内のいずれかの構成ファイルが変更されると、自動的に再計算され、再キャッシュされます。ただし、<processModel> セクションは例外です。
  • ASP.NET 構成システムには拡張性があります。新しい構成パラメータを定義したり、それらの構成パラメータを処理するための構成セクション ハンドラを作成したりできます。
  • ASP.NET で構成ファイルを外部アクセスから保護するには、ブラウザから構成ファイルに直接アクセスできないようにインターネット インフォメーション サービス (IIS: Internet Information Services) を設定します。構成ファイルを直接要求したブラウザには、HTTP アクセス エラー 403 (禁止) が返されます。

このセクションの内容

関連項目