ASP
作者: Olive Oliver
傳統 ASP 包含在 IIS 7.0 和更新版本中,並可用於共用裝載案例。 不過,規劃這樣做的主機者應該考慮下列建議:
- 關閉 ASP 範本快取。 因為 ASP 磁片範本快取不是共用主機感知,所以應該停用它。 這不應該造成問題,因為每個背景工作進程最多會在記憶體中快取 500 個 ASP 頁面,再將任何專案寫入磁片。
- 委派 scriptErrorSentToBrowser 設定。 IIS 小組在 IIS 7.0 和更新版本中強化了傳統 ASP 安全性。 例如,scriptErrorSentToBrowser 屬性會設定為 false。 這表示使用者瀏覽器中不會顯示任何腳本錯誤。 不過,在裝載的環境中,這可能是個問題。 沒有任何其他方法可以針對傳統 ASP 錯誤進行疑難排解。 請注意,不建議委派 < applicationhost.config中的 asp > 區段,因為有某些設定,例如範本快取的位置,以及主控者可能不想委派的 runOnEndAnonymously 設定。 下列指引提供如何委派 scriptErrorSentToBrowser 設定而不委派完整 < asp > 區段的指示。
若要關閉 ASP 範本快取:
開啟命令提示字元並執行下列命令:
%windir%\system32\inetsrv\appcmd set config -section:asp -cache.maxDiskTemplateCacheFiles:0
若要委派 scriptErrorSentToBrowser 設定:
<使用文字編輯器開啟
%windir%\system32\inetsrv\config\applicationhost.config
並變更 < 區段名稱=「asp」 overrideModeDefault=「Deny」 / > 元素,以允許透過 overrideModeDefault 委派applicationhost.config中的 asp > 區段,如下所示:<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>
資源
如需詳細資訊,請參閱: