私のこの質問を読むのに時間を割いてくれてありがとう。これは確かに男子生徒の間違いですが、私の人生ではそれを見ることができません。
次の内容のASPページがあります。
<!-- #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"
%>
<HTML>
<HEAD>
</HEAD>
<BODY>
<%=ConfigFile%>
</BODY>
</HTML>
これは、スタンドアロンページとしてアクセスした場合、またはiFrameを介して呼び出された場合に機能します(質問しないでください)。ただし、「include ConfigFile」という行を追加すると、IISでページに404エラーが返されます。ConfigFileの値は、ページの本文に出力されている「/cms/project/config/ConfigDms.inc.asp」です。
元のincludeステートメントを置き換えるために「includehttps://xxx.xxx.xxx.xxx/cms/project/config/ConfigDms.inc.asp 」という行を追加すると、意図したとおりに機能します。
これは構成エラーであると確信していますが、ASP設定「enableParentPaths」をtrueに設定し、「errorsenttobrowser」をtrueにスクリプト化しても、まだどこにも到達していません。
古いバージョンのIISを実行している別のサーバーに同じコードがあり、正常に機能していますが、元のサーバーをセットアップしたことはなく、新しいサーバーをセットアップするためのドキュメントもありません。
404エラーの原因となるASPスクリプトは次のようになります。
<!-- #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>
よろしく