Upgrade To IIS 6 From IIS 5
由於微軟不再繼續維護Windows 2000 Server的作業系統,所以,必須將原本在IIS 5上執行的ASP程式移植到Windows 2003 Server的IIS 6上,結果真的如預期地遇到了一些問題。
微軟為了在IIS 6的版本增加安全性,所以關閉啟用上層路徑功能"../..",因此在程式中使用 Include 路徑的上層路徑功能來呼叫此目錄以外的程式來使用,結果就造成下面的錯誤訊息:
ASP error 0131 The include file function.inc cannot contain '..' to indicate the parent directory. /path/function.inc, line 2
The Page Cannot Be Displayed
HTTP 500-Internal server error
Reference:Enable Parent Paths Is Disabled by Default in IIS 6.0
撰寫的ASP程式可以透過 Include 功能來組合需要的功能模組,而這些程式碼都是用單純的文字格式存檔,在執行時是透過直譯器直接讀取ASP程式碼、翻譯、編譯及執行,因此,一個ASP程式會由多個文字檔案組成的,而這些文字檔若不是用同一編碼格式存檔,如ANSI、UTF-8,會造成IIS 6傳給瀏覽器的資料會是亂碼,這又是IIS 6比IIS 5限制多一點的地方。
0 意見:
張貼留言