ASP <asp>

  • 概要
  • 互換性
  • セットアップ
  • 方法
  • 構成
  • サンプル コード

※本ページに挿入されている画像をクリックすると、画像全体が別ウィンドウで表示されます。

概要

<asp> 要素は、ASP アプリケーションの構成設定を指定します。これらの構成設定には、デバッグとエラー通知の設定を制御する属性などの、開発者中心の構成設定が含まれます。また、<asp> 要素には、アプリケーションが使用する文字セット、アプリケーションのスクリプト言語、およびアプリケーションに対してエラーのログ記録を有効にするかどうかを制御する属性も含まれます。

<asp> 要素には、COM+、ASP キャッシュ、バッファー処理制限、およびサイトやアプリケーションのセッション状態を構成する要素が含まれる場合もあります。

互換性

  IIS 7.0 IIS 6.0
注意 <asp> は IIS 7.0 で新たに導入された要素です。

<asp> 要素およびその子は、IIS 6.0 の IIsWebService オブジェクトの ASP 関連プロパティに代わるものです。

セットアップ

Web サーバー上の ASP アプリケーションをサポートおよび構成するには、ASP モジュールをインストールする必要があります。ASP モジュールをインストールする手順は次のとおりです。

Windows Server 2008

  1. タスク バーで [スタート] をクリックし、[管理ツール] をポイントして [サーバー マネージャー] をクリックします。

  2. [サーバー マネージャー] ウィンドウのツリー表示で、[役割] を展開して [Web サーバー (IIS)] をクリックします。

  3. [Web サーバー (IIS)] ウィンドウで、[役割サービス] セクションまでスクロールして [役割サービスの追加] をクリックします。

  4. 役割サービスの追加ウィザードの [役割サービスの選択] ページで、[ASP] を選択します。

    拡大

  5. [ASP に必要な役割サービスを追加しますか] ダイアログ ボックスが表示されたら、[必要な役割サービスを追加] をクリックします (このページは、"ISAPI 拡張" 役割サービスをサーバーにまだインストールしていない場合にのみ表示されます)。

    拡大

  6. [役割サービスの選択] ページで [次へ] をクリックします。

  7. [インストール オプションの確認] ページで [インストール] をクリックします。

  8. [結果] ページで [閉じる] をクリックします。

Windows Vista

  1. タスク バーで [スタート] をクリックし、[コントロール パネル] をクリックします。

  2. [コントロール パネル] で、[プログラムと機能][Windows の機能の有効化または無効化] の順にクリックします。

  3. [Internet Information Services][World Wide Web サービス][アプリケーション開発機能] の順に展開します。

  4. [ASP] を選択して、[OK] をクリックします。

    拡大

方法

サイトまたはアプリケーションの ASP 設定の構成方法

  1. タスク バーで [スタート] をクリックし、[管理ツール] をポイントして [インターネット インフォメーション サービス (IIS) マネージャー] をクリックします。

  2. [接続] ウィンドウで当該サーバー名を展開して [サイト] を展開し、構成する Web サイトまたは Web アプリケーションを選択します。

  3. サイトまたはアプリケーションの [ホーム] ウィンドウで [ASP] をダブルクリックします。

    拡大

  4. [ASP] ウィンドウで必要な設定を構成してから、[操作] ウィンドウの [適用] をクリックします。

    拡大

構成

サーバー レベルの <asp> 要素は ApplicationHost.config ファイルで構成できます。ただし既定では、サイト レベルまたはアプリケーション レベルの <asp> 要素を構成することはできません。

属性

属性 説明
appAllowClientDebug

オプションの Boolean 属性。

クライアント側のデバッグを有効にするかどうかを指定します。

既定値は false です。

appAllowDebugging

オプションの Boolean 属性。

サーバー側のデバッグを有効にするかどうかを指定します。

既定値は false です。

bufferingOn

オプションの Boolean 属性。

ASP アプリケーション出力のバッファー処理を有効にするかどうかを指定します。

既定値は true です。

calcLineNumber

オプションの Boolean 属性。

エラー報告に番号を指定するために、ASP でコードの各実行行の行番号を計算して保存するかどうかを指定します。

既定値は true です。

codePage

オプションの unit 属性。

ASP アプリケーションの既定の文字セットを指定します。この値は、0 から 2147483647 までの整数です。たとえば値に 1252 を指定すると、既定の文字セットはアメリカ英語および多くのヨーロッパ言語で使用されるラテン文字セットに設定されます。

既定値は 0 です。

enableApplicationRestart

オプションの Boolean 属性。

構成設定を変更するたびに ASP アプリケーションを自動的に再起動するかどうかを指定します。

既定値は true です。

enableAspHtmlFallback

オプションの Boolean 属性。

要求された .asp ファイルと同じ名前を持つ .htm ファイルが存在する場合は、その .htm ファイルを .asp ファイルの代わりにクライアントに送信するかどうかを指定します。これは、キューが要求でいっぱいになったために要求が拒否される場合に発生します。

既定値は true です。

enableChunkedEncoding

オプションの Boolean 属性。

HTTP 1.1 チャンク転送エンコードを有効にするかどうかを指定します。

既定値は true です。

enableParentPaths

オプションの Boolean 属性。

ASP ページで現在のディレクトリまたはそれより上のディレクトリへの相対パスを許可するかどうかを指定します。

既定値は false です。

errorsToNTLog

オプションの Boolean 属性。

Windows イベント ログへの ASP エラーのログ記録を有効にするかどうかを指定します。

既定値は false です。

exceptionCatchEnable

オプションの Boolean 属性。

COM コンポーネントの例外トラップを有効にするかどうかを指定します。false に設定した場合、Microsoft Script Debugger ツールは、デバッグ中のコンポーネントから送信される例外をキャッチしません。

既定値は true です。

lcid

オプションの unit 属性。

ASP アプリケーションの既定のロケール識別子を指定します。この値は、0 から 2147483647 までの整数です。

既定値は 0 です。

logErrorRequests

オプションの Boolean 属性。

ASP エラーを既定でクライアント ブラウザーおよび IIS ログに書き込むかどうかを指定します。

既定値は true です。

runOnEndAnonymously

オプションの Boolean 属性。

SessionOnEnd および ApplicationOnEnd グローバル ASP 関数を匿名ユーザーとして実行するかどうかを指定します。

既定値は true です。

scriptErrorMessage

オプションの string 属性。

特定のデバッグ エラーがクライアントに送信されない場合にブラウザーに送信されるエラー メッセージを指定します。

既定値は、"URL の処理中にサーバー上でエラーが発生しました。システム管理者に連絡してください。" です。

scriptErrorSentToBrowser

オプションの Boolean 属性。

クライアント ブラウザーへのデバッグ固有の書き込みを有効にするかどうかを指定します。

既定値は false です。

scriptLanguage

オプションの string 属性。

Web サーバーで実行されるすべての ASP アプリケーションの既定のスクリプト言語を指定します。

既定値は VBScript です。

子要素

要素 説明
cache オプションの要素。

ASP キャッシュの設定を指定します。
comPlus オプションの要素。

COM+ の設定を指定します。
limits オプションの要素。

さまざまな ASP プロパティの制限値を指定します。
session オプションの要素。

ASP セッション状態の設定を指定します。

構成サンプル

次の構成例では、Contoso という名前のサイト上の ASP アプリケーションに対してバッファー処理とセッション状態を有効にすると共に、同じサイトに対して親パスを無効にします。

<location path="Contoso">
   <system.webServer>
      <asp enableParentPaths="false" bufferingOn="true">

         <session allowSessionState="true" />
      </asp>
   </system.webServer>
</location>

サンプル コード

次のコード例では、Contoso という名前のサイト上の ASP アプリケーションに対してバッファー処理とセッション状態を有効にすると共に、同じサイトに対して親パスを無効にします。

AppCmd.exe

appcmd.exe set config "Contoso" -section:system.webServer/asp /enableParentPaths:"False" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/asp /bufferingOn:"True" /commit:apphost
appcmd.exe set config "Contoso" -section:system.webServer/asp /session.allowSessionState:"True" /commit:apphost

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using (ServerManager serverManager = new ServerManager())
      {
         Configuration config = serverManager.GetApplicationHostConfiguration();

         ConfigurationSection aspSection = config.GetSection("system.webServer/asp", "Contoso");
         aspSection["enableParentPaths"] = false;
         aspSection["bufferingOn"] = true;

         ConfigurationElement sessionElement = aspSection.GetChildElement("session");
         sessionElement["allowSessionState"] = true;

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample
   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetApplicationHostConfiguration
      Dim aspSection As ConfigurationSection = config.GetSection("system.webServer/asp", "Contoso")
      aspSection("enableParentPaths") = False
      aspSection("bufferingOn") = True
      Dim sessionElement As ConfigurationElement = aspSection.GetChildElement("session")
      sessionElement("allowSessionState") = True
      serverManager.CommitChanges()
   End Sub
End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";

var aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Contoso");
aspSection.Properties.Item("enableParentPaths").Value = false;
aspSection.Properties.Item("bufferingOn").Value = true;
var sessionElement = aspSection.ChildElements.Item("session");
sessionElement.Properties.Item("allowSessionState").Value = true;

adminManager.CommitChanges();

VBScript

Set adminManager = CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"

Set aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Contoso")
aspSection.Properties.Item("enableParentPaths").Value = False
aspSection.Properties.Item("bufferingOn").Value = True
Set sessionElement = aspSection.ChildElements.Item("session")
sessionElement.Properties.Item("allowSessionState").Value = True

adminManager.CommitChanges()