using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// 页面请求Hepler
/// </summary>
public class HttpHelper
{
/// <summary>
/// 获得全路径
/// </summary>
/// <param name="strVirtualPath"></param>
/// <returns></returns>
public static string GetFullUrlPath(object virtualPath)
{
if (virtualPath == null)
{
return string.Empty;
}
string strVirtualPath = virtualPath.ToString();
if (string.IsNullOrEmpty(strVirtualPath))
{
return string.Empty;
}
if (strVirtualPath.Contains("javascript:"))
{
return strVirtualPath;
}
//如果是外部链接
if (strVirtualPath.Length > 7 && strVirtualPath.Substring(0, 7).ToUpper().Equals("HTTP://"))
{
return strVirtualPath;
}
if (strVirtualPath.Length > 2 && strVirtualPath[0] == '~' && strVirtualPath[1] == '/')
{
strVirtualPath = strVirtualPath.Remove(0, 2);
}
if (strVirtualPath.Length > 1 && strVirtualPath[0] == '/')
{
strVirtualPath = strVirtualPath.Remove(0, 1);
}
string webPath = HttpContext.Current.Request.ApplicationPath;
if (webPath != "/")
{
return string.Format("{0}/{1}", webPath, strVirtualPath);
}
else
{
return string.Format("{0}{1}", webPath, strVirtualPath);
}

}

/// <summary>
/// 获取网站URL
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public static string GetRequestWebUrl()
{
HttpRequest request = HttpContext.Current.Request;
string urlAuthority = request.Url.GetLeftPart(UriPartial.Authority);
if (request.ApplicationPath == null || request.ApplicationPath == "/")
{
//当前部署在Web站点下
return urlAuthority;
}
else
{
//当前部署在虚拟目录下
return urlAuthority + request.ApplicationPath;
}
}
}

C# 获取当前IIS请求地址的更多相关文章

  1. tomcat server获取用户的请求地址

    当用户 与 tomcat之间 用 nginx做跳转时, HttpServletRequest 中的 getRemoteHost()方法获取到的只是nginx的地址,而不能拿到用户真正的请求地址 解决方 ...

  2. Asp.Net Core获取请求信息/获取请求地址

     一.Asp.Net Core 2.0版本中目前HttpRequest是个抽象类 在控制器或视图上下文中获取到的 Request对象,是 DefaultHttpRequest的实例. 定义 如图 : ...

  3. java nginx等代理或网关转发请求后获取客户端的ip地址,原理

    在没有网关或者反向代理软件情况下,java里获取客户端ip地址的方法是request.getRemoteAddr() 先解释下http协议和TCP协议: 网页默认是进行http连接了,http协议即超 ...

  4. 获取客户端的请求IP地址

    获取客户端的请求IP地址 package com.microClass.util; import javax.servlet.http.HttpServletRequest; import java. ...

  5. Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL

    Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL >>>>>>>>>>>>> ...

  6. [技巧篇]11.JavaScript原生态如何获取浏览器请求地址中的参数

    var getAccessParams = function(){ var i,ilen,strs,keyName,keyValue, params={}, path = window.locatio ...

  7. springMVC get请求及其请求地址写法

    今天,需要写一个接口,写完之后,测试的时候发线一直报404错误,不知道为什么报错.应该是get请求地址的问题,get请求有两个参数,改为一个参数的时候是好用的,可能那种方式不适合写两个参数的get请求 ...

  8. IIS应用地址池监控

    目的:公司服务器IIS有十几个应用地址池,总在不经意间停掉一个,停止线系统日志里会有一大堆警告日志,然后就停掉了,分析了好几次,网上有人说是某一个网站的问题应该查网站, 但是网站又有那么多地址,谁知道 ...

  9. Java 获取Linux 的IP地址

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

随机推荐

  1. gitlab svlogd runsv 基于Rotated Log的日志统计

    小结: 1. 日志轮询 log roate 日志文件自动转存和重命名 2. rotated log独立于其他模块,可以以静态库或者动态库的形式支持二次开发: 3. [root@d1 ~]# gitla ...

  2. Rotate Image(二位数组顺时针旋转)

    问题描述: You are given an n x n 2D matrix representing an image. Rotate the image by 90 degrees (clockw ...

  3. MySql关联子查询

    mysql有时候把子查询优化的很差,最差的情景就是 在where子句中使用in. -----<高性能mysql第二版>4.4.1

  4. 棋盘问题---poj1321(dfs)

    http://poj.org/problem?id=1321 由于搜索是原来写的,而集训的时候没来所以只能现在补补咯-_- 简单的深搜 #include<stdio.h> #include ...

  5. 洛谷P1710 地铁涨价 图论

    其实是个傻逼题但是我太傻逼了然后就错了无数遍总算A了 觉得不写个题解真是亏了 其实是 之前想了个超时想法 然后还自以为很对?后来看了题解发现还是比较妙的哦 于是就想着那还是发个题解记录下趴quq 正解 ...

  6. [记录]Visual Studio 插件

    NuGet Resharper Viasfora : 着色 ozcode2 : 调试 dbforge  调试 phptools vsdoc man DebugStudio Alpha Producti ...

  7. Python安装常见问题(1):zipimport.ZipImportError: can't decompress data

    在CentOS以及其他的Linux系统中遇到安装包安装错误的原因,大多数都是因为缺少依赖包导致的,所以对于错误:zipimport.ZipImportError: can’t decompress d ...

  8. 让Logstash每次都从头读文件及常见问题

    input { file { path => ["/data/test.log"] start_position => "beginning" si ...

  9. .NET MVC model数据验证

    MVC提供了很方便的数据验证,只需要在model里加入相关的正则等,那么就会在前台里生成相关的验证脚本.需要引用两个js文件: jquery.validate.min.js jquery.valida ...

  10. 有意思的JSON.parse()、JSON.stringify()

    前言 现在JSON格式在web开发中非常重要,特别是在使用ajax开发项目的过程中,经常需要将后端响应的JSON格式的字符串返回到前端,前端解析成JS对象值(JSON 对象),再对页面进行渲染. 在数 ...