2010-10-11 42 views
1

我在Win7 x64上設置了一個ASP Classic網站,我已經完成了常規技巧(將站點添加爲Application以啓用global.asa,使用Classic pipeline App Pool ,啓用32位應用程序:True,加載用戶配置文件:False,啓用父路徑:True,爲每個人完全訪問站點文件,使用odbc 32),並且該站點已啓動並正在運行* .asp文件。但是,我在Include目錄下有一些名爲* .inc的文件,IIS似乎無法處理它們。IIS 7.5無法運行* .inc as ASP Classic

當我嘗試訪問http://localhost/ /includes/myfile.inc,我得到:

HTTP錯誤404.3 - 找不到 您請求的頁面不能因爲擴展配置的送達。如果頁面是腳本,請添加處理程序。如果文件應該被下載,添加一個MIME映射。

我試圖在處理程序映射中添加一個腳本映射,類似於* .asp:請求路徑= * .inc,可執行文件=%windir%\ system32 \ inetsrv \ asp.dll,只有在請求時纔會調用處理程序映射到文件,並且在有序列表中,這個新映射位於頂部。現在,我得到這個錯誤時要求。公司:

HTTP錯誤404.17 - 找不到 請求的內容似乎是腳本,並不會由靜態文件處理程序提供服務。

任何想法?

回答

3

你爲什麼要在瀏覽器中加載.inc文件?這不是正常的行爲。這些文件旨在包含在其他文件中,例如ASP。

阻止這些文件被請求阻止你泄露你的源代碼,這是如果IIS確實提供這些文件會發生什麼;它只會輸出他們的內容verbatum。

+0

好點,我應該去一個MIME地圖。 – su27k 2010-10-12 01:11:47

+5

**沒有**,你應該**絕對不**這樣做。 INC文件應該是*服務器端*包含文件。默認情況下,一旦你有ASP自己正常工作,IIS7.x將正確處理它們100%。如果您將這些INC文件用作*客戶端*包含,則應將其重命名爲更合適的內容。但是你應該永遠不要讓服務器端代碼文件被客戶端下載,這就是爲他們添加一個MIME映射可能最終會做的事情。 – 2010-10-12 16:24:20