.NET使用ServerManager获取网站物理路径

最近因为工作需要,用wpf做了一个辅助小工具,如下图

为了获取网站的物理路径,我分析了通过ServerManager获取到的变量,也通过百度搜索了很多,但仍然没有找到方法。

后来使用必应,在国外网站找到了,不知道是不是没有正确的打开方式,所以经历如此曲折,下面我把获取物理路径的方法写下来供大家参考,希望对后人有所帮助。

 1 private string GetWebSitePhysicalPath(Site site)
 2         {
 4             var applicationRoot = site.Applications.Where(a => a.Path == "/").Single();
 5             var virtualRoot = applicationRoot.VirtualDirectories.Where(v => v.Path == "/").Single();
 6             string ret = virtualRoot.PhysicalPath;
 7             string[] strList = ret.Split(‘%‘).Where(t => t != "%").ToArray();
 8             ret = "";
 9             for (int i = 0; i < strList.Length; i++)
10             {
11                 string sPath = Environment.GetEnvironmentVariable(strList[i].ToLower());
12                 if (string.IsNullOrEmpty(sPath))
13                 {
14                     ret += strList[i];
15                 }
16                 else
17                 {
18                     ret += sPath;
19                 }
20             }
21             return ret;
22         }

参考资料:

[1]https://stackoverflow.com/questions/5431703

原文地址:https://www.cnblogs.com/zhuxiaoxiao/p/9495897.html

时间: 2024-09-28 05:38:30

.NET使用ServerManager获取网站物理路径的相关文章

网站物理路径查找思路

一.思想核心 找网站安装路径,即找Document Root 的位置,而Document Root最常见的地方就是 phpinfo.php 和httpd.conf中: 路径查找方向,可以大致分为以下2个方向: (1) 找phpinfo (2) 找httpd.conf 二.具体操作 1.通过phpinfo.php找到 Document Root 找到网站安装路径.即,想尽办法去找,爬行.爆破都可以: 常见的路径参考如下: 10.2.10.234/ 直接访问到 phpinfo.php 1.php p

Asp.Net 获取物理路径

一.AppDomain 1.AppDomin获取当前前程序域目录 2.不需要请求上线文实例,例如在Global.ascx中访问等 //网站物理目录 AppDomain.CurrentDomain.BaseDirectory //网站动态目录 AppDomain.CurrentDomain.DynamicDirectory 结果: 网站物理目录: E:\自开发控件\Pager\PageBar 网站动态目录: C:\Users\tianma\AppData\Local\Temp\Temporary

Silverlight获取选择文件的本地物理路径

最近在做一个大文件断点续传的控件,有试过纯C#的代码来写,但后来发现是在是太不灵活了,于是考虑使用控件.但在控件开发过程中发现,如何获取上传文件的物理路径是个大问题,因为Silverlight不支持获取客户端路径的,不仅是Silverlight,所有的微软上传控件都不支持获取本地物理路径.于是我就各种查,终于发现有种方法可以获取到文件的信息了. 先看一个例子 1 #region 选择文件 2 private void bt_SelectFile_Click(object sender, Rout

(五)物理路径探测

获取到物理路径有什么用:很多时候拿权限,写shell 怎样获取物理路径: 一,探针文件 很多软件搭建时会有这种包含有网站信息的文件,说明等. 常见的探针遗留文件名(如:www.xxx.com/phpinfo.php) phpinfo.php Info.php Php.php 1.php 等等... 二,报错获得 多用于容错做的不是很好的网站 报错方法: 1,动态URL加特殊符号(英文单引号符) 2,错误的SQL语句(and 1=2) 三,后台获得 如果可以登录到目标后台,一般后台首页会有一些说明

PHP中如何获取网站根目录物理路径

在php程序开发中经常需要获取当前网站的目录,我们可以通过常量定义获取站点根目录物理路径,方便在程序中使用. 下面介绍几种常用的获取网站根目录的方法. php获取网站根目录方法一: <?php define("WWWROOT",str_ireplace(str_replace("/","\\",$_SERVER['PHP_SELF']),'',__FILE__)."\\"); echo WWWROOT ; ?> p

JSP---jsp页面获取物理路径

(非原创) 在jsp页面中使用request.getRealPath("/")时出现下列警告: The method getRealPath(String) from the type ServletRequest is deprecated 出现该警告,该方法已经不能使用了 Deprecated. As of Version 2.1 of the Java Servlet API, use ServletContext.getRealPath(java.lang.String) in

C#中网站根路径、应用根路径、物理路径、绝对路径,虚拟路径的区别

C#中网站根路径,请站点的最外一层 /表示 应用根路径 ~/表示,有时候C#程序路径并不是网站路径 物理路径 server.mappath("~/") 是指应用程序放在服务器硬盘的位置 c:\aaa\bbb\ccc 绝对路径:是指以网站根路径为起点页面的位置 /aa/bb/cc/a.aspx 相对路径:是以当前页面的起点目标页面的位置 如当前页面是 /aa/bb/b.aspx 要找 /aa/bb/cc/a.aspx 路径应该是cc/a.aspx 如果要找aa文件夹里的东西就用../xx

js获取网站项目根路径

//js获取项目根路径,如: http://localhost:8083/uimcardprj function getRootPath(){ //获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp var curWwwPath=window.document.location.href; //获取主机地址之后的目录,如: uimcardprj/share/meun.jsp var pathName=window.document.

物理路径,虚拟路径,物理路径与虚拟路径转换,文件下载方法

1 什么是物理路径?什么是虚拟路径?(1) 例子:  用IIS举个例子:     WEB服务目录是d:\路径     那么用HTTP访问网站根目录的时候,其实访问的是d:\路径,那么其中虚拟路径就是\(根),物理路径就是d:\路径  (2) 我自己的理解:绝对路径一般都是带有磁盘完成路径, 而虚拟路径一般不带有磁盘 2 程序中虚拟路径和物理路径的转化 #region 物理路径和相对路径的转换        //本地路径转换成URL相对路径          private string urlc