这里说的“相对路径”是相对于“主调文件”所在的文件夹。
#include file
#include file后面跟的是文件的“相对路径”,不可以用“绝对路径”。
使用相对路径,如:file="scriptile.inc",file="..\scriptile.inc"
不可以用绝对路径,如:file="\scriptile.inc"
#include virtual
#include virtual后面可以跟文件的“绝对路径”,也可以跟形式上的“相对路径”(所谓形式上的“相对路径”,指的是这个路径从形式上看是“相对路径”,但它还是会被转换成“绝对路径”,因此本质上还是“绝对路径”)
使用绝对路径,如:virtual="olderile.inc"
使用形式上的“相对路径”,如:virtual="folderile.inc",会被转换成virtual="olderile.inc"
建议使用“绝对路径”形式,如:virtual="olderile.inc",而不要写成virtual="folderile.inc",虽然这么写也可以
结合几个例子,说下区别:
代码如下:
假设“包含文件”和“被包含文件”同在根目录下名为folder的文件夹内,则virtual="folderile.asp"是可以的,而file="folderile.asp"是错误的。
如果一个站点下有2个文件夹folder1和folder2,folder1下有文件file1.asp,folder2下有文件file2.asp,如果file1.asp要调用file2.asp,那么在file1.asp中可以这样写:
<!--#include virtual="older2ile2.asp"-->,
在这种情况下用<!--#include file="folder2ile2.asp"-->是错误的。
使用过程中,要注意下面几点:
不论用#include file还是#include virtual,在路径中用单纯用“/”或单纯用“\”或者二者混和使用都可以。
如:file="..\scriptile.inc", file="../script/file.inc",file="../scriptile.inc"
#include file和#include virtual只能包含站内文件,不能包含站外文件。 例如,假设有一个站点名为website,使用virtual="websiteile.asp"是错误的。
11
22
33