如果我在IIS管理器中定义了“应用程序”,我可以获取服务器变量APPL_MD_PATH
的值以检索与应用程序关联的物理路径。
如果我配置了“虚拟目录”,APPL_MD_PATH
仍然提供与应用程序关联的物理路径,而不是与虚拟目录关联的物理路径。
如何检索与当前请求关联的虚拟目录的物理路径?
如何确定是从服务器还是虚拟目录提供请求?
答案 0 :(得分:2)
您可以使用HSE_REQ_MAP_URL_TO_PATH_EX
查找任何网址的物理路径。
如果您想知道自己是否在vdir中,只需一次剥离一个最右边的片段即可开始向上走。调用HSE_REQ_MAP_URL_TO_PATH_EX
,直到你a)点击应用程序根目录或b)点击一个物理目录,该物理目录的前缀与前一个不同。如果(b)那么你在虚拟目录中。
您还可以使用上述方法查找当前vdir的物理路径。