ASP
公開日: 2007 年 12 月 1 日 (作業者: walterov (英語))
更新日: 2008 年 3 月 19 日 (作業者: walterov (英語))
IIS 7 には Classic ASP が含まれており、共有ホスティング シナリオで使用できます。ASP の使用を検討しているホスティング事業者は、以下の推奨事項を考慮する必要があります。
- ASP テンプレート キャッシュを無効にする。ASP ディスク テンプレート キャッシュは、共有ホスティングに対応していないので、無効にする必要があります。無効にしても、ディスクに書き込まれる前に、ワーカー プロセスごとに 500 ASP ページまでメモリーにキャッシュできるので、問題が生じることはありません。
- 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 設定を委任する:
overrideModeDefault を利用して applicationhost.config の <asp> セクションを委任します。 "%windir%\system32\inetsrv\config\applicationhost.config" をテキスト エディターで開き、<section name="asp" overrideModeDefault="Deny" /> 要素を以下のように変更します。
<section name="asp" overrideModeDefault="Allow" />
lockAllAttributesExcept および lockElements を使用して、scriptErrorSentToBrowser 設定の委任のみを許可します。<asp> 要素を検索し、以下のように変更します。
<asp lockAllAttributesExcept="scriptErrorSentToBrowser" lockElements="limits,cache" />
次に、ホスト管理者として 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>
参考資料
詳細については、次の資料を参照してください。