zoukankan      html  css  js  c++  java
  • 小议Server.MapPath Virus

    用法:
    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 中含有英文点(.)或以斜杠结尾( / 或 \ )不影响上述规则。

    【Blog】http://virusswb.cnblogs.com/

    【MSN】jorden008@hotmail.com

    【说明】转载请标明出处,谢谢

    反馈文章质量,你可以通过快速通道评论:

  • 相关阅读:
    arp攻击 (可查看同一局域网他人手机照片)
    SQL注入(转载)
    常见文件文件头文件尾格式总结及各类文件头
    CTF
    Base64,Base32,Base16进制的区别
    Maven学习总结(二):安装
    Maven学习总结(一):基本概念
    Myeclipse下集成SVN插件
    Windows下多个JDK版本之间的切换
    java线程的常用方法
  • 原文地址:https://www.cnblogs.com/virusswb/p/1163854.html
Copyright © 2011-2022 走看看