#include 指令指示 Web 服务器将指定文件的内容插入网页。必须使用 HTML 注释分隔符将指令括起来。
此指令可以用于 ASP 网页、STM 网页、INC 网页或文件扩展名已映射到 SSI 解释程序 (ssinc.dll) 或 ASP 解释程序 (asp.dll) 的任何其他网页。如果安装了 Internet 服务管理器,可以修改默认扩展名映射并添加新映射,请参阅“设置应用程序映射”。
所包含的文件可以带有任意扩展名,但建议使用 .inc 扩展名。所包含的文件将通过调用网页的解释程序。例如,如果要包含使用 #exec 指令的网页,必须从 STM 网页调用。如果要包含具有 ASP 脚本的网页,必须从 ASP 网页调用它。如果包含的是 HTM 网页,它将会按预期方式运行。
<!-- #include PathType = FileName -->
PathType
FileName 的路径类型。路径可以是下列某种类型:
| 路径类型 | 含义 |
| 文件 | FileName 是相对于使用 #include 指令的文档所在目录的路径。所包含的文件可以在同一目录中,也可以在子目录中。包含的文件所在的目录不能位于使用 #include 指令的网页所在目录之上,除非选中了 Web 文件夹属性页中的“启用父路径”复选框。建议不要如此操作,原因是此操作不安全。因为任何 Web 用户只要在站点 URL 中输入 ../..,就可以看到父文件夹中的内容,而您可能不希望他们看到这些内容。 |
| 虚拟 | 文件名是相对于网站上虚拟目录的完整虚拟路径。 |
FileName
指定要包含的文件名。FileName 必须包含文件扩展名,而且必须将文件名用引号 (") 引起来。
要点
包含此指令的文件必须使用已映射到 SSI 解释程序的扩展名。否则,Web 服务器将不处理此指令。默认情况下,文件扩展名 .stm、.shtm 和 .shtml 将映射到 SSI 解释程序 (ssinc.dll)。使用 #echo 指令的 STM 网页既可以自运行,也可以通过 Response.Redirect 从 ASP 网页调用它来运行。用 Server.Transfer、Server.Execute 或 #include 从 ASP 网页中调用 STM 网页是行不通的,因为这样会迫使 STM 网页通过 asp.dll 而不是通过 ssinc.dll 进行解释。
如果安装了 Internet 信息服务管理单元,则可以修改默认扩展名映射并添加新映射,请参阅设置应用程序映射。由于不能将一个文件扩展名映射到多个可执行文件,所以不能在 ASP 文件中使用此指令。ASP 文件已映射到 asp.dll,并且必须保持此状态。
--- IncExample.asp ---
<!-- The included file is in the same directory as IncExample.asp. -->
<!-- #include file = "myfile.inc" -->
<!-- The included file is in the directory above IncExample.asp.
Enable Parent Paths must be checked for the web folder. -->
<!-- #include file = "..\myfile.htm" -->
<!-- The included file is in the Scripts virtual directory. -->
<!-- #include virtual = "/scripts/tools/global.inc" -->