asp.net获取网站路径

news/2024/5/16 2:00:19/文章来源:https://blog.csdn.net/ddxkjddx/article/details/5988858

网站在服务器磁盘上的物理路径: HttpRuntime.AppDomainAppPath
虚拟程序路径: HttpRuntime.AppDomainAppVirtualPath


任何于Request/HttpContext.Current等相关的方法, 都只能在有请求上下文或者页面时使用. 即在无请求上下文时,HttpContext.Current为null. 而上面提到的方法一直可用.

对于全局Cache对象的访问亦然.

 

 

==================================================================================

示例:输出asp.net 网站路径。

asp.net获取网站路径private void responseHtml()
asp.net获取网站路径    
{
asp.net获取网站路径         System.Text.StringBuilder sb
 = new System.Text.StringBuilder();
asp.net获取网站路径         sb.Append(
string.Format("当前时间: {0}", Server.HtmlEncode(DateTime.Now.ToString())));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("当前请求的虚拟路径: {0}",Server.HtmlEncode(Request.CurrentExecutionFilePath)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("获取当前应用程序的根目录路径: {0}", Server.HtmlEncode(Request.ApplicationPath)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("当前请求的虚拟路径: {0}",Server.HtmlEncode(Request.FilePath)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("当前请求的虚拟路径: {0}",Server.HtmlEncode(Request.Path)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("获取当前正在执行的应用程序的根目录的物理文件系统路径: {0}", Server.HtmlEncode(Request.PhysicalApplicationPath)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         sb.Append(
string.Format("获取与请求的 URL 相对应的物理文件系统路径: {0}", Server.HtmlEncode(Request.PhysicalApplicationPath)));
asp.net获取网站路径         sb.Append(
"<br />");
asp.net获取网站路径         Response.Write(sb.ToString());
asp.net获取网站路径     }

asp.net获取网站路径}


输出:当前时间: 2007-08-30 11:03:49
当前请求的虚拟路径: /aDirectory/Sample/responseHtml.aspx
获取当前应用程序的根目录路径: /aDirectory
当前请求的虚拟路径: /aDirectory/Sample/responseHtml.aspx
当前请求的虚拟路径: /aDirectory/Sample/responseHtml.aspx
获取当前正在执行的应用程序的根目录的物理文件系统路径: E:/Visual Studio 2005/
获取与请求的 URL 相对应的物理文件系统路径: E:/Visual Studio 2005//aDirectory/

 

 

在ASP.NET编程中经常需要用Request获取url的有关信息.
测试的url地址是http://www.test.com/testweb/default.aspx, 结果如下:

Request.ApplicationPath:                     /testweb
Request.CurrentExecutionFilePath:       /testweb/default.aspx
Request.FilePath:                                /testweb/default.aspx
Request.Path:                                     /testweb/default.aspx
Request.PathInfo:
Request.PhysicalApplicationPath:          E:/WWW/testweb/
Request.PhysicalPath:                         E:/WWW/testweb/default.aspx
Request.RawUrl:                                 /testweb/default.aspx
Request.Url.AbsolutePath:                    /testweb/default.aspx
Request.Url.AbsoluteUri:                      http://www.test.com/testweb/default.aspx
Request.Url.Host:                                www.test.com
Request.Url.LocalPath:                        /testweb/default.aspx

当url中带参数时可以使用:
HttpContext.Current.Request.Url.PathAndQuery.ToString()//

本页地址:   Request.URL;  


上页地址:  
Request.UrlReferrer  
Request.ServerViables["http_referer"]  
Request.RawUrl  
Request.RawUrl.QueryAndPath  
System.IO.Path.GetFileName(Request.FilePath.ToString())  

 

 

 

HttpRequest 类型公开了以下成员。

构造函数
名称 说明
HttpRequest 基础结构。初始化 HttpRequest 对象。
页首
方法
名称 说明
BinaryRead 执行对当前输入流进行指定字节数的二进制读取。
Equals 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。)
Finalize 允许 Object 在“垃圾回收”回收 Object 之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
GetType 获取当前实例的 Type。 (继承自 Object。)
MapImageCoordinates 将传入图像字段窗体参数映射为适当的 x 坐标值和 y 坐标值。
MapPath 已重载。 为当前请求将请求的 URL 中的虚拟路径映射到服务器上的物理路径。
MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
SaveAs 将 HTTP 请求保存到磁盘。
ToString 返回表示当前 Object 的 String。 (继承自 Object。)
ValidateInput 对通过 Cookies 、Form 和 QueryString 属性访问的集合进行验证。
页首
属性
名称 说明
AcceptTypes 获取客户端支持的 MIME 接受类型的字符串数组。
AnonymousID 获取该用户的匿名标识符(如果存在)。
ApplicationPath 获取服务器上 ASP.NET 应用程序的虚拟应用程序根路径。
AppRelativeCurrentExecutionFilePath 获取应用程序根的虚拟路径,并通过对应用程序根使用波形符 (~) 表示法(例如,以“~/page.aspx”的形式)使该路径成为相对路径。
Browser 获取或设置有关正在请求的客户端的浏览器功能的信息。
ClientCertificate 获取当前请求的客户端安全证书。
ContentEncoding 获取或设置实体主体的字符集。
ContentLength 指定客户端发送的内容长度(以字节计)。
ContentType 获取或设置传入请求的 MIME 内容类型。
Cookies 获取客户端发送的 Cookie 的集合。
CurrentExecutionFilePath 获取当前请求的虚拟路径。
FilePath 获取当前请求的虚拟路径。
Files 获取采用多部分 MIME 格式的由客户端上载的文件的集合。
Filter 获取或设置在读取当前输入流时要使用的筛选器。
Form 获取窗体变量集合。
Headers 获取 HTTP 头集合。
HttpMethod 获取客户端使用的 HTTP 数据传输方法(如 GET、POST 或 HEAD)。
InputStream 获取传入的 HTTP 实体主体的内容。
IsAuthenticated 获取一个值,该值指示是否验证了请求。
IsLocal 获取一个值,该值指示该请求是否来自本地计算机。
IsSecureConnection 获取一个值,该值指示 HTTP 连接是否使用安全套接字(即 HTTPS)。
Item 从 Cookies、Form、QueryString 或 ServerVariables 集合中获取指定的对象。
LogonUserIdentity 获取当前用户的 WindowsIdentity 类型。
Params 获取 QueryString、Form、ServerVariables 和 Cookies 项的组合集合。
Path 获取当前请求的虚拟路径。
PathInfo 获取具有 URL 扩展名的资源的附加路径信息。
PhysicalApplicationPath 获取当前正在执行的服务器应用程序的根目录的物理文件系统路径。
PhysicalPath 获取与请求的 URL 相对应的物理文件系统路径。
QueryString 获取 HTTP 查询字符串变量集合。
RawUrl 获取当前请求的原始 URL。
RequestType 获取或设置客户端使用的 HTTP 数据传输方法(GET 或 POST)。
ServerVariables 获取 Web 服务器变量的集合。
TotalBytes 获取当前输入流中的字节数。
Url 获取有关当前请求的 URL 的信息。
UrlReferrer 获取有关客户端上次请求的 URL 的信息,该请求链接到当前的 URL。
UserAgent 获取客户端浏览器的原始用户代理信息。
UserHostAddress 获取远程客户端的 IP 主机地址。
UserHostName 获取远程客户端的 DNS 名称。
UserLanguages 获取客户端语言首选项的排序字符串数组。

 

 

1.Request.ApplicationPath->当前应用的目录
楼主没有接触过jsp吧,如果接触过jsp就会非常清楚,ApplicationPath指的是当前的application(应用程序)的目录
对应的--例如我的服务器上有两个web应用域名都是MySite.com 一个映射到目录MySite.com/1/ 另一个影射到 http://MySite.com/2/
那么 MySite.com/1/就是第一个应用的ApplicationPath 同理 MySite.com/2/就是第二个应用的ApplicationPath

2.Request.FilePath->对应于iis的虚拟目录
如 URL http://MySite.com/1/index.html/pathinfo
FilePath = /1/index.html

3.Request.Path->当前请求的虚拟路径
Path 是 FilePath 和 PathInfo 尾部的串联。例如 URL http://MySite.com/1/index.html/pathinfo
那么Path = /1/index.html/pathinfo

4.Request.MapPath(string url)->将url映射为iis上的虚拟目录
这个目录都是相对于application的根目录的
于Server.MapPath相比,不会包含类似c:/这样的路径
可以理解为是相对路径(对比的Server.MapPath就是绝对路径)

5.Server.MapPath(string url)->将url映射为服务器上的物理路径
例如 http://MySite.com/1/index.html 假设你的应用程序在c:/iis/MySite中
那么 就是 c:/iis/MySite/1/index.html

 

 

Requst.FilePath获取当前请求的虚拟路径。FilePath 属性不包含 PathInfo 尾部。例如,对于 URL http://www.contoso.com/virdir/page.html/tail,FilePath 值为 /virdir/page.html。

===============================================================================================================================

Request.Path 获取当前请求的虚拟路径。Path 是 FilePath 和 PathInfo 尾部的串联。例如,对于 URL http://www.contoso.com/virdir/page.html/tail,Path 为 /virdir/page.html/tail。

===============================================================================================================================

Request.MapPath 方法将指定的虚拟路径映射到物理路径。
下面的代码示例使用 MapPath 方法将虚拟路径转换为服务器上完全限定的物理路径。此示例包括两个部分:

.aspx 页映射路径、读取文件并显示读取操作的结果。

UpperCaseFilterStream 类,该类将通过它传递的所有字符都更改为大写。

示例的第一部分显示如何使用 MapPath 方法将虚拟路径转换为完全限定的物理路径。之后,将此物理路径传递给 StreamReader 对象,该对象包含该文件的内容。然后,调用 Write 方法,以在页面上显示文件的内容。Filter 属性用于将筛选器附加到响应流,该响应流使页面上显示的文本全部大写。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_768807.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux服务器知识导图,整理分享一些 Linux思维导图(值得收藏)_网站服务器运行维护,Linux...

Win10 改 Win7&#xff0c;BIOS 怎么设置&#xff1f;_网站服务器运行维护Win10改Win7&#xff0c;BIOS设置方法&#xff1a;首先进入到BIOS界面&#xff1b;然后将“secure”改为disabled&#xff1b;接着将“Boot List Option”改为UEFI&#xff1b;最后在“1st Boot Priorit…

3个pc网站适配手机的方法

新的形势下&#xff0c;移动网站的使用率越来越高。移动网站的优化如何做被更多的人所关注。这里切图移动就从目前三种比较常用的pc站点移动配置方式&#xff0c;并从性能&#xff0c;需求&#xff0c;成本方面对三者进行了分析&#xff0c;并给出相应的优化建议。pc站与移动站…

web网站加速之CDN(Content Delivery Network)技术原理

在不同地域的用户访问网站的响应速度存在差异,为了提高用户访问的响应速度、优化现有Internet中信息的流动,需要在用户和服务器间加入中间层CDN. 使用户能以最快的速度&#xff0c;从最接近用户的地方获得所需的信息&#xff0c;彻底解决网络拥塞&#xff0c;提高响应速度&…

网站性能测试:使用Selenium测试网页加载时间

WebLOAD与用于Web浏览器应用程序的开源测试工具Selenium的集成&#xff0c;使您可以将执行实际活动的真实Web浏览器集成到您的性能测试场景中&#xff0c;并准确识别问题。 使用集成&#xff0c;您可以使用WebLOAD的虚拟用户来压缩系统以生成负载&#xff0c;同时运行用于测量实…

网站性能工具Yslow的使用方法

Yslow是雅虎开发的基于网页性能分析浏览器插件&#xff0c;从年初我使用了YSlow后&#xff0c;改变了博客模板大量冗余代码&#xff0c;不仅提升了网页的打开速度&#xff0c;这款插件还帮助我分析了不少其他网站的代码&#xff0c;之前我还特意写了提高网站速度的秘籍&#xf…

构建ASP.NET网站十大必备工具

最近使用ASP.NET为公司构建了一个简单的公共网站&#xff08;该网站的地址&#xff1a;http://superexpert.com/&#xff09;。在这个过程中&#xff0c;我们使用了数量很多的免费工具&#xff0c;如果把构建ASP.NET网站的必备工具总结一下&#xff0c;将会是一件十分有趣的事情…

用 IIS 7、ARR 與 Velocity 建设高性能的大型网站

本帖是研讨会中的一些杂记&#xff0c;搭配一些官方的文档&#xff0c;经整合归纳后&#xff0c;介绍 IIS 7 如何搭配新一代的 ARR (ApplicationRequest Routing)&#xff0c;建置 Server Farm 并达到比过去 NLB 更优的 LoadBalancing 功能&#xff0c;此外还介绍微软新一代的分…

SignalR简介- 建立realtime 的网站

前言 一早起床后&#xff0c;在消化RSS的过程中&#xff0c;看到Scott Hanselman在Russia TechDays介绍SignalR的影片&#xff0c;一整个让人很惊艳&#xff0c;马上就想动手写写看。 由于我也是初学者&#xff0c;先把相关Reference 列上来&#xff0c;有兴趣的朋友可以直接参…

爬虫保姆级教程3:利用python-Flask框架搭建本地数据可视化网站

成果展示&#xff1a; &#xff08;1&#xff09;网站首页&#xff1a; &#xff08;2&#xff09;电影表单页 &#xff08;3&#xff09; 电影评分页 &#xff08;4&#xff09; 词频统计页 &#xff08;5&#xff09;团队页面 接下来让我们看看上述网站是如何完成的&#xf…

Nginx修改进入网站时的默认页面

上文写了如何将前端网站使用nginx放到服务器中&#xff0c; [传送门]&#xff1a;Nginx纯前端服务器部署_代码骑士的博客-CSDN博客 但是直接打开后发现默认页并不是登录界面&#xff0c; 所以还要进一步修改nginx里面的配置&#xff1a; vim /etc/nginx/nginx.conf 修改&am…

搜狗五笔输入法官方网站_搜狗五笔输入法新版上线:争渡读屏体验升级,助视障人士便捷沟通...

近日&#xff0c;搜狗五笔输入法更新至V4.1版本&#xff0c;新增微信号登录、手机号登录功能&#xff0c;以此实现了对于皮肤、自定义短语、细胞词库、配置、输入统计等用户个性资产与输入习惯的同步与迁移。另同时解决了多个影响输入体验问题&#xff0c;并针对争渡读屏的兼容…

如果网站的 Cookie 超过 4K,会发生什么情况?

本文一把大部分源码罗列出来了&#xff0c;收录至我的GitHub精选文章&#xff0c;欢迎Star&#xff1a;https://github.com/Java-Ling/Java-Interview-guide 有没有想过&#xff0c;如果网站的 Cookie 特别多特别大&#xff0c;会发生什么情况&#xff1f; 不多说&#xff0c;…

下载网站视频_批量下载bilibili视频全集下载

环境&#xff1a; 请先安装Python和you-get 教程&#xff1a; Python&#xff1a;https://www.liaoxuefeng.com/wiki/1016959663602400/1016959856222624 you-get&#xff1a;打开cmd&#xff0c;输入pip3 install you-get -i https://pypi.tuna.tsinghua.edu.cn/simple即可…

如何搭建自己的网站_如何让别人看到自己编写的网页_IIS创建网站

准备工作&#xff1a; 打开控制面板>卸载程序 点击启用或关闭Windows功能>将图中勾选的项勾选 等待其应用完成即可 建立网站 在开始菜单图标处右键&#xff0c;选择计算机管理 在右侧找到服务和应用程序展开&#xff0c;点击Internet Infomation Services(IIS)管理器…

程序员每天必逛的5个技术网站,你用过几个?

不少程序员小伙伴每天要写几十行代码&#xff0c;偶尔会腾出时间刷一些技术网站。 那么&#xff0c;程序员们每天都刷些什么技术网站呢? w3cschool调查了一些程序员网友&#xff0c;发现他们每天经常刷下面这5大技术网站&#xff1a; 一、InfoQ InfoQ基本上就是日刷&#x…

十个接私活赚外快的网站,你有技术就有钱

大家好&#xff0c;我是尼奥。 前两天在知乎上发了一篇文章「现在程序员的工资是不是被高估了」&#xff0c;有一些网友就私信我说&#xff1a;为什么工资被高估了&#xff0c;我还这么穷&#xff0c;有没有什么兼职平台推荐的。 我一想&#xff0c;还真有&#xff0c;毕竟自…

八个设计师接私活的网站,你有技术就有钱

之前写过一篇文章&#xff0c;给程序员们推荐了十个接私活的平台&#xff0c;很多网友留言问我有没有「设计师接私活的网站」&#xff1f; 我昨天就花了一整天的时间整理了下面这八个网站&#xff0c;送给大家。 1.四个垂直性网站 这一类平台的优点是客单价高&#xff0c;而…

十个高质量自学网站,让你的技术突飞猛进

1、Coursera&#xff1a;https://www.coursera.org/ 最初由美国斯坦福大学两名计算机科学教授创办&#xff0c;国际知名在线教育平台&#xff0c;还可以获得认证的课程证书&#xff0c;可以申请奖学金&#xff0c;也有很多免费的学习资源。 2、EdX&#xff1a;https://www.e…

有程序员专门刷题的网站吗?

废话不多说&#xff0c;直接进入主题。 五个国内五个国外&#xff0c;满足你所有面试和学习需求。 国内 1.LeetCode&#xff1a;https://leetcode-cn.com/ 优点&#xff1a;题型多题目多且经典。在国内绝对是头部的刷题软件了。 2.算法学习 LeetCode&#xff1a;https://…

网站ftp和服务器是什么关系,HTTP和FTP之间有哪些区别

HTTP和FTP之间有哪些区别&#xff1f;本篇文章就给大家介绍HTTP和FTP是什么&#xff1f;让大家了解HTTP和FTP之间的区别&#xff0c;希望对你们有所帮助。HTTP和FTP都是用于在客户端和服务器之间传输数据的文件传输协议&#xff0c;但它们之间还是存在差异的。在介绍HTTP和FTP之…