server.mappath方法详解
2023-06-13 09:14:40 时间
./当前目录
/网站主目录
../上层目录
~/网站虚拟目录
如果当前的网站目录为E:\wwwroot应用程序虚拟目录为E:\wwwroot\company浏览的页面路径为E:\wwwroot\company\news\show.asp
在show.asp页面中使用
Server.MapPath("./")返回路径为:E:\wwwroot\company\news
Server.MapPath("/")返回路径为:E:\wwwroot
Server.MapPath("../")返回路径为:E:\wwwroot\company
Server.MapPath("~/")返回路径为:E:\wwwroot\company
server.MapPath(request.ServerVariables("Path_Info"))
Request.ServerVariables("Path_Translated")
上面两种方式返回路径为D:\wwwroot\company\news\show.asp
MapPath方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。
语法
Server.MapPath(Path)
参数
Path
指定要映射物理目录的相对或虚拟路径。若Path以一个正斜杠(/)或反斜杠(\)开始,则MapPath方法返回路径时将Path视为完整的虚拟路径。若Path不是以斜杠开始,则MapPath方法返回同.asp文件中已有的路径相对的路径。
注释
MapPath方法不支持相对路径语法(.)或(..)。例如,下列相对路径../MyDir/MyFile.txt返回一个错误。
MapPath方法不检查返回的路径是否正确或在服务器上是否存在。
因为MapPath方法只映射路径而不管指定的目录是否存在,所以,您可以先用MapPath方法映射物理目录结构的路径,然后将其传递给在服务器上创建指定目录或文件的组件。
示例
对于下列示例,文件data.txt和包含下列脚本的test.asp文件都位于目录C:\Inetpub\Wwwroot\Script下。C:\Inetpub\Wwwroot目录被设置为服务器的宿主目录。
下列示例使用服务器变量PATH_INFO映射当前文件的物理路径。脚本
<%=server.mappath(Request.ServerVariables("PATH_INFO"))%><BR>
输出
c:\inetpub\wwwroot\script\test.asp<BR>
由于下列示例中的路径参数不是以斜杠字符开始的,所以它们被相对映射到当前目录,此处是C:\Inetpub\Wwwroot\Script。脚本
<%=server.mappath("data.txt")%><BR>
<%=server.mappath("script/data.txt")%><BR>
输出
c:\inetpub\wwwroot\script\data.txt<BR>
c:\inetpub\wwwroot\script\script\data.txt<BR>
接下来的两个示例使用斜杠字符指定返回的路径应被视为在服务器的完整虚拟路径。脚本
<%=server.mappath("/script/data.txt")%><BR>
<%=server.mappath("\script")%><BR>
输出
c:\inetpub\script\data.txt<BR>
c:\inetpub\script<BR>
下列示例演示如何使用正斜杠(/)或反斜杠(\)返回宿主目录的物理路径。脚本
<%=server.mappath("/")%><BR>
<%=server.mappath("\")%><BR>
输出
c:\inetpub\wwwroot<BR>
c:\inetpub\wwwroot<BR>
/网站主目录
../上层目录
~/网站虚拟目录
如果当前的网站目录为E:\wwwroot应用程序虚拟目录为E:\wwwroot\company浏览的页面路径为E:\wwwroot\company\news\show.asp
在show.asp页面中使用
Server.MapPath("./")返回路径为:E:\wwwroot\company\news
Server.MapPath("/")返回路径为:E:\wwwroot
Server.MapPath("../")返回路径为:E:\wwwroot\company
Server.MapPath("~/")返回路径为:E:\wwwroot\company
server.MapPath(request.ServerVariables("Path_Info"))
Request.ServerVariables("Path_Translated")
上面两种方式返回路径为D:\wwwroot\company\news\show.asp
MapPath方法将指定的相对或虚拟路径映射到服务器上相应的物理目录上。
语法
Server.MapPath(Path)
参数
Path
指定要映射物理目录的相对或虚拟路径。若Path以一个正斜杠(/)或反斜杠(\)开始,则MapPath方法返回路径时将Path视为完整的虚拟路径。若Path不是以斜杠开始,则MapPath方法返回同.asp文件中已有的路径相对的路径。
注释
MapPath方法不支持相对路径语法(.)或(..)。例如,下列相对路径../MyDir/MyFile.txt返回一个错误。
MapPath方法不检查返回的路径是否正确或在服务器上是否存在。
因为MapPath方法只映射路径而不管指定的目录是否存在,所以,您可以先用MapPath方法映射物理目录结构的路径,然后将其传递给在服务器上创建指定目录或文件的组件。
示例
对于下列示例,文件data.txt和包含下列脚本的test.asp文件都位于目录C:\Inetpub\Wwwroot\Script下。C:\Inetpub\Wwwroot目录被设置为服务器的宿主目录。
下列示例使用服务器变量PATH_INFO映射当前文件的物理路径。脚本
<%=server.mappath(Request.ServerVariables("PATH_INFO"))%><BR>
输出
c:\inetpub\wwwroot\script\test.asp<BR>
由于下列示例中的路径参数不是以斜杠字符开始的,所以它们被相对映射到当前目录,此处是C:\Inetpub\Wwwroot\Script。脚本
<%=server.mappath("data.txt")%><BR>
<%=server.mappath("script/data.txt")%><BR>
输出
c:\inetpub\wwwroot\script\data.txt<BR>
c:\inetpub\wwwroot\script\script\data.txt<BR>
接下来的两个示例使用斜杠字符指定返回的路径应被视为在服务器的完整虚拟路径。脚本
<%=server.mappath("/script/data.txt")%><BR>
<%=server.mappath("\script")%><BR>
输出
c:\inetpub\script\data.txt<BR>
c:\inetpub\script<BR>
下列示例演示如何使用正斜杠(/)或反斜杠(\)返回宿主目录的物理路径。脚本
<%=server.mappath("/")%><BR>
<%=server.mappath("\")%><BR>
输出
c:\inetpub\wwwroot<BR>
c:\inetpub\wwwroot<BR>
相关文章
- ORA-26837: Server “string” is not an XStream inbound server ORACLE 报错 故障修复 远程处理
- 教你远程连接SQL Server 2014数据库的方法
- SQLServer 错误 945 由于文件不可访问,或者内存或磁盘空间不足,所以无法打开数据库“%.*ls”。 有关详细信息,请参阅 SQL Server 错误日志。 故障 处理 修复 支持远程
- ORA-16401: archive log rejected by Remote File Server (RFS) ORACLE 报错 故障修复 远程处理
- SQL Server实现将特定字符串拆分并进行插入操作的方法
- SQL Server存储过程中编写事务处理的方法小结
- 五种SQL Server分页存储过程的方法及性能比较
- 查询SQL Server Index上次Rebuild时间的方法
- SQL Server中使用sp_password重置SA密码实例
- Sql Server 2012完全卸载方法 只需8步轻松卸载
- Fedora 28 server 安装 Lnmp 之后重启系统之后 web 无法访问
- 掌握SQL Server日志记录及管理技巧,保障数据库安全运行。(sqlserver日志)
- 手把手教你使用SQL Server(sasqlserver)
- SQL Server快速生成表的方法(sqlserver生成表)
- 长度在SQL Server中查看字段长度的方法(sqlserver查字段)
- 数据『SQL Server获取N条数据的方法』(sqlserver取n条)
- SQL Server的双精度优势(sqlserver双精度)
- 重复数据清除SQL Server中重复数据的方法(sqlserver去掉)