架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
[.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382 [.Net/C#]2000人开发交流Qq群:348041382
查看: 1592|回复: 12
打印 上一主题 下一主题

[ASP.NET] asp.net 实现反向代理功能[源码]

[复制链接]
跳转到指定楼层
楼主
发表于 2018-3-14 12:01:13 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
目的,我自己服务器请求别人接口的时候,有可能会有请求限制,或者我的ip被封掉了,无法通过自己的ip地址请求。说白了,自己服务器无法向目标服务器直接发送或者请求内容。

两种方式可以解决:1、使用代理ip;2、反向代理(请求转发)

使用代理ip请求,用的都烦了,没有什么难度,我们这次用反向代理来实现,定义如下:

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

其实,nginx可以快速搭建一个反向代理,但是,出于成本考虑!我放弃使用nginx,因为nginx需要购买服务器,而我想直接购买一个asp.net空间就能实现反向代理的功能。

网上,我没有找到比较好的例子,所以,就自己动手写一个简单的吧!

参考文章:

asp.net IHttpModule接口详解
http://www.itsvse.com/thread-4580-1-1.html
(出处: 架构师_程序员)


支持get,post请求,测试如下:



使用方法如下:
首先购买一个支持asp.net的空间,然后,把网站上传到空间的根目录,

  1. <appSettings>
  2.     <add key="host" value="https://www.itsvse.com"/>
  3.   </appSettings>
复制代码


在web.config文件中,找到appsetting节点,替换host里面的value值即可!

源码下载:

游客,如果您要查看本帖隐藏内容请回复







上一篇:c#必须使用适当的属性或方法修改此标头解决办法
下一篇:IIS7 经典模式和集成模式的区别
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
推荐
 楼主| 发表于 2018-3-14 12:41:51 | 只看该作者
iis在经典模式下会报错:System.Web.HttpException: 未能执行 URL

解决办法:
  1. <system.web>
  2.       <httpModules>
  3.         <add name="ProxyHttpModule" type="http_proxy.ProxyHttpModule,http-proxy" />
  4.       </httpModules>
  5.       <customErrors mode="Off"/>
  6.       <compilation debug="true" targetFramework="4.0" />
  7.     </system.web>
复制代码


码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
推荐
发表于 2018-3-22 11:12:26 | 只看该作者
泰语U一U币覅欧威欧发红包为欧服报我一缺乏吧
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
推荐
发表于 2018-5-6 21:36:02 | 只看该作者
学习了,这个正是我现在的需求。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
12#
发表于 2018-4-24 11:09:18 | 只看该作者
很实用,感谢分享。。。
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
11#
发表于 2018-4-20 15:08:18 | 只看该作者
感谢楼主分享
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
10#
发表于 2018-4-18 09:44:44 | 只看该作者
我来看看啦
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
9#
发表于 2018-4-15 14:50:32 | 只看该作者
谢谢分享,来看看
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
8#
发表于 2018-4-11 16:19:47 | 只看该作者
谢谢分享。。。下载学习
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
7#
发表于 2018-4-6 20:56:07 | 只看该作者
不错不错,参考参考
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
5#
发表于 2018-3-20 10:35:11 | 只看该作者
看看源码
码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2018-5-24 19:33

Powered by Discuz! X3.4

© 2001-2014 Comsenz Inc.

快速回复 返回顶部 返回列表