Server.MapPath(path)的使用

用法
1.Server.MapPath("/") 应用程序根目录所在的位置 如 C:\Inetpub\wwwroot\
2.Server.MapPath("./") 表示所在页面的当前目录
    注:等价于Server.MapPath("") 返回 Server.MapPath("")所在页面的物理文件路径
3.Server.MapPath("../")表示上一级目录
4.Server.MapPath("~/")表示当前应用级程序的目录,如果是根目录,就是根目录,如果是虚拟目录,就是虚拟目录所在的位置 如:C:\Inetpub\wwwroot\Example\
注:等效于Server.MapPath("~")。

语法:Server.MapPath(bstrLogicalPath)

作用:将 bstrLogicalPath 映射为计算机上的物理目录,注意此物理目录可以也可能不存在。

参数:bstrLogicalPath 的意思是相对目录*或虚拟目录。

疑问:bstrLogicalPath 既然既可以表示相对目录,又可以表示虚拟目录,那么它什么时候表示相对目录,什么时候表示虚拟目录呢。

规则:

当 bstrLogicalPath 以 ../ 或 ..\ 开头时,当作相对目录。 <

当 bstrLogicalPath 以斜杠开头( / 或 \ )时,从Web站点根目录(不是物理目录)的角度出发检查是否有匹配的虚拟目录(树)**,如果匹配,则当作虚拟目录,否则当作相对目录。

当 bstrLogicalPath 不以斜杠开头( / 或 \ )时,从Web站点当前目录(不是物理目录)的角度出发检查是否有匹配的虚拟目录(树)**,如果匹配,则当作虚拟目录,否则当作相对目录。
*也可以是文件
**由于虚拟目录下面可以再建立虚拟目录,所以这里使用虚拟目录树,即:每一层的目录或虚拟目录都要与 bstrLogicalPath 中的对应目录层匹配。

***bstrLogicalPath 中含有英文点(.)或以斜杠结尾( / 或 \ )不影响上述规则。

相关文章

我们利用Serv-U的obdc功能,可以把FTP用户信息存在数据库中,这样对Web操作方便了很多,下面是在线更改...
MicrosoftVBscript运行时错误(0x000A0005) 无效的过程调用或参数 MicrosoftVBscript运行时错误(0x000A0...
引用记录集中域值的最有效方法是什么?   到目前为止,我都是用名字引用记录集中的域值的。这可能是一...
学习目的:学会数据库的基本操作2(查询记录) 在第四天中我们有这样一个程序:<%set conn=server.c...
  引言  本文针对ASP程序设计中最基础、也是最关键的部分 数据库文件的调用 进行说明,同时谈谈ASP...
今天偶尔打开dvbbs,突然发现总固项的贴子,动网论坛V7.1.0正式版[26日09:30时更新] 功能增加了不少,也...