ASP

公開日: 2007 年 12 月 1 日 (作業者: walterov (英語))

更新日: 2008 年 3 月 19 日 (作業者: walterov (英語))

IIS 7 には Classic ASP が含まれており、共有ホスティング シナリオで使用できます。ASP の使用を検討しているホスティング事業者は、以下の推奨事項を考慮する必要があります。

  1. ASP テンプレート キャッシュを無効にする。ASP ディスク テンプレート キャッシュは、共有ホスティングに対応していないので、無効にする必要があります。無効にしても、ディスクに書き込まれる前に、ワーカー プロセスごとに 500 ASP ページまでメモリーにキャッシュできるので、問題が生じることはありません。
  2. scriptErrorSentToBrowser 設定を委任するIIS チームは、IIS 7 で Classic ASP セキュリティを強化しました。たとえば、scriptErrorSentToBrowser プロパティを False に設定するとします。この設定では、ユーザーのブラウザーには、いかなるスクリプト エラーも表示されません。しかし、ホスト環境では、問題を起こす可能性があります。Classic ASP エラーのトラブルシューティングを行う方法はありません。そこで、ホスティング事業者が委任しない方がよいテンプレート キャッシュの配置場所の設定や runOnEndAnonymously などの設定があるため、applicationhost.config の <asp> セクションを委任することは勧められていません。以下のガイドでは、<asp> セクション全体を委任することなく、scriptErrorSentToBrowser 設定を委任する方法を説明します。

ASP テンプレート キャッシュを無効にする:

コマンド プロンプトを開き、以下のコマンドを実行します。

%windir%\system32\inetsrv\appcmd set config -section:asp -cache.maxDiskTemplateCacheFiles:0

scriptErrorSentToBrowser 設定を委任する:

  1. overrideModeDefault を利用して applicationhost.config の <asp> セクションを委任します。 "%windir%\system32\inetsrv\config\applicationhost.config" をテキスト エディターで開き、<section name="asp" overrideModeDefault="Deny" /> 要素を以下のように変更します。

    <section name="asp" overrideModeDefault="Allow" />
    
  2. lockAllAttributesExcept および lockElements を使用して、scriptErrorSentToBrowser 設定の委任のみを許可します。<asp> 要素を検索し、以下のように変更します。

    <asp lockAllAttributesExcept="scriptErrorSentToBrowser" lockElements="limits,cache" /> 
    
  3. 次に、ホスト管理者として appcmd を使用し、scriptErrorSentToBrowser を True に設定します (以下の例を参照)。

    %windir%\system32\inetsrv\appcmd set config "Default Web Site" -section:asp -scriptErrorSentToBrowser:true 
    

    または、ユーザーの web.config ファイルに、以下のステートメントを追加するよう依頼してください。

    <system.webServer>
       <asp scriptErrorSentToBrowser="true"/>
    </system.webServer>
    

参考資料

詳細については、次の資料を参照してください。