这不是真正的答案,而是更多地确认您的问题。virtual
但是,请在我的回答结束时查看一种可能对您有用的方法。
来自 MSDN 博客文章IIS:关于服务器端包含 (SSI) 语法的注释(KB 203064 Revisited) (日期为 2010 年 12 月 28 日;适用于 IIS 版本 4.0 到 7.5):
有关文件和虚拟语法的更多信息
使用文件路径的 SSI 指令可以通过使用文件或虚拟路径来引用文件。
- file元素用于与当前文档的文件夹相关的文件。以下示例包含当前文件夹中的文件:
<!--#include file="myfile.txt"-->
- 虚拟元素表示相对于 Web 服务器的基本文件夹的路径。以下示例在 /scripts 虚拟文件夹中包含一个文件:
<!--#include virtual="/scripts/myfile.txt"-->
结论:该file
属性用于指定相对于当前文档的文件位置。因此,如果这是您的情况所需要的,您确实需要将virtual
属性更改为file
属性。
不过,有一个可能的例外。Wikipedia 上的文章Server Side Includes显示了以下示例:
<!--#include virtual="menu.cgi" -->
这向我表明,virtual
文件路径不一定需要以/
. 在没有前导的情况下/
,文件的位置virtual
是相对于 Web 服务器的基本文件夹的。
因此,在我看来,如果被引用的文件恰好位于 Web 服务器的基本文件夹(或基本文件夹的子文件夹)中,则file
andvirtual
属性的行为可能相同。