ASP文件包含问题

来源:百度知道 编辑:UC知道 时间:2024/05/17 01:00:00
我在网站主目录下开了个子目录,比如说子目录名为article
则在article下的文件要包含主目录下的文件include.asp
当服务器为windows 2000 Server提供的IIS服务,这种写法是正确的
<!--#include "../include.asp"-->

可是,当服务器变为2003 server则会报错.
提示说不能用".."表示上一级目录.
然后我改为
<!--#include "/include.asp"-->
又会报错说不能用"/"开头.
要怎样写才正确呢?
<!--#include file="../include.asp"-->

程式里是正确的,这里只是手误,打成了
<!--#include "../include.asp"-->
所以不是这里的问题.

去iis虚拟目录的属性上找一个允许使用父目录的一个对勾,勾上就行了

<!--#include file= "../include.asp"-->

同意上面的说法,2003中默认是不允许使用父级目录的

ASP包含文件有两种形式
1, 楼主所说的<!--#include file="../include.asp"--> 是一种, 使用相对于当前路径的路径.
2, <!--#include virtual="/include.asp"-->使用相对于整个网站根目录的绝对路径, 这种办法有个弱点, 当你的站点更新目录位置的时候(比如从a移到a下的b目录下的c目录), 需更新所有使用该方法引用的文件

那么, 解决这个问题有2种办法:
1, 更改IIS设置, 使该虚拟目录支持父目录: 虚拟目录属性 => 虚拟目录选项卡(或主目录选项卡) => 配置 => 选项 => 勾选户用父路径
2, 使用<!--#include virtual="/include.asp"-->

你的 windows 2003 server的IIS默认情况下,不允许父级目录,
要修改站点设置,允许父目录,只要在iis的主目录-->配置-->允许父目录一项打上勾就行了