感謝您花時間閱讀我的這個問題,我敢肯定這是一個學校男孩的錯誤,但對於我來說,看不到它。在IIS 7.5中包含ASP文件的問題
我有一個ASP網頁,其中有如下內容:
當作爲一個獨立的頁面訪問,或者通過iframe稱爲(不要問)其中一期工程。但是,如果我添加「include ConfigFile」行,該頁面將在IIS中返回404錯誤。 ConfigFile的值是「/cms/project/config/ConfigDms.inc.asp」,打印在頁面的主體中。
如果我添加「include https://xxx.xxx.xxx.xxx/cms/project/config/ConfigDms.inc.asp」行來替換原始包含語句,它將按預期工作。
現在我確定這是一個配置錯誤,但雖然我將ASP設置「enableParentPaths」設置爲true,並將「errorsenttobrowser」設置爲true,但我仍無法獲得任何位置。
我在運行舊版IIS的另一臺服務器上有相同的代碼,但工作正常,但是,我從來沒有設置原始服務器,也沒有設置新服務器的文檔。
ASP腳本這將導致404錯誤的樣子:
<!-- #include file="include.asp" -->
<%
Dim ConfigFile
ConfigFile = Left(Request.ServerVariables("URL"), InStr(Request.ServerVariables("URL"),"/framework/lib/dms/asp/"))
ConfigFile = ConfigFile & "project/config/ConfigDms.inc.asp"
include ConfigFile
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
<%=ConfigFile%>
</BODY>
</HTML>
但這個文件正常工作:試圖訪問時
<!-- #include file="include.asp" -->
<%
Dim ConfigFile
ConfigFile = Left(Request.ServerVariables("URL"), InStr(Request.ServerVariables("URL"),"/framework/lib/dms/asp/"))
ConfigFile = ConfigFile & "project/config/ConfigDms.inc.asp"
include "https://xxx.xxx.xxx.xxx/cms/project/config/ConfigDms.inc.asp"
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
<%=ConfigFile%>
</BODY>
</HTML>
問候
你在include語句中寫了什麼? <! - #include file =「/ cms/project/config/ConfigDms.inc.asp」 - >?開始時的斜線意味着iis會查看網頁的根部。 – ulluoink
第1行的包含文件正常工作,這不是問題。第二個包含文件沒有在上面的代碼中列出,但在下面的文本中提到,它只是包含一些用於定義設置變量的CONSTANT。將該文件的內容添加到上面的代碼中也是如此,因此它不是文件內容,因爲它在我使用完整的https://路徑指向文件時也可以工作。該文件的路徑取自網站的根目錄。 –