代理服务器HTTP代理服务器的设计与实现

qq代理服务器  时间:2021-03-02  阅读:()

HTTP代理服务器的设计与实现

1、 实验目的

 熟悉并掌握Socket网络编程的过程与技术

 深入理解HTTP协议掌握HTTP代理服务器的基本工作原理

 掌握HTTP代理服务器设计与编程实现的基本技能。

2、 实验环境

 接入Internet的实验主机

 Window s xp或Window s 7/8

 开发语言 C/C++ 或Java等。

3、 实验内容

(1)设计并实现一个基本HTTP代理服务器。要求在指定端口例如8080接收来自客户的HTTP请求并且根据其中的URL地址访问该地址所指向的HTTP服务器原服务器接收HTTP服务器的响应报文并将响应报文转发给对应的客户进行浏览。

(2)设计并实现一个支持Cache功能的HTTP代理服务器。要求能缓存原服务器响应的对象并能够通过修改请求报文添加if-modified-sinc e头行 向原服务器确认缓存对象是否是最新版本。 选作内容加分项目可以当堂完成或课下完成

(3)扩展HTTP代理服务器支持如下功能 选作内容加分项目可以当堂完成或课下完成a) 网站过滤允许/不允许访问某些网站b)用户过滤支持/不支持某些用户访问外部网站c)网站引导将用户对某个网站的访问引导至一个模拟网站钓鱼。

4、 实验方式

每位同学上机实验实验指导教师现场指导。

5、 实验过程

1浏览器使用代理

为了使浏览器访问网址时通过代理服务器必须进行相关设置以IE浏览器设置为例打开浏览器工具浏览器选项连接局域网设置代理服务器具体过程如图1-1所示。

图1-1浏览器的代理服务器设置

2多线程使用

使用函数_b eginthreadex创建子线程使用函数_endthreadex结束线程详情见C S DN。

6、参考内容

代理服务器俗称“翻墙软件”允许一个网络终端一般为客户端通过这个服务与另一个网络终端一般为服务器进行非直接的连接。如图1-2所示为普通Web应用通信方式与采用代理服务器的通信方式的对比。

图1-2Web应用通信方式对比

代理服务器在指定端口 例如8080监听浏览器的访问请求需要在客户端浏览器进行相应的设置接收到浏览器对远程网站的浏览请求时代理服务器开始在代理服务器的缓存中检索URL对应的对象网页、图像等对象找到对象文件后提取该对象文件的最新被修改时间代理服务器程序在客户的请求报文首部插入<If-Modified-Since:对象文件的最新被修改时间>并向原Web服务器转发修改后的请求报文。如果代理服务器没有该对象的缓存则会直接向原服务器转发请求报文并将原服务器返回的响应直接转发给客户端同时将对象缓存到代理服务器中。代理服务器程序会根据缓存的时间、大小和提取记录等对缓存进行清理。

本实验需实现一个简单的HT TP代理服务器可以分为两个步骤 首先请设置浏览器开启本地代理注意设置代理端口与代理服务器监听端口保持一致。a)单用户代理服务器

单用户的简单代理服务器可以设计为一个非并发的循环服务器。首先代理服务器创建HT TP代理服务的TC P主套接字通过该主套接字监听等待客户端的连接请求。当客户端连接之后读取客户端的HT TP请求报文通过请求行中的URL解析客户期望访问的原服务器IP地址创建访问原目标服务器的TC P套接字将H T TP请求报文转发给目标服务器接收目标服务器的响应报文当收到响应报文之后将响应报文转发给客户端最后关闭套接字等待下一次连接。b)多用户代理服务器

多用户的简单代理服务器可以实现为一个多线程并发服务器。首先代理服务器创建HT TP代理服务的T CP主套接字通过该主套接字监听等待客户端的连接请求。当客户端连接之后创建一个子线程 由子线程执行上述一对一的代理过程服务结束之后子线程终止。与此同时主线程继续接受下一个客户的代理服务。

7实验报告

在实验报告中需要总结说明

1 Socket编程的客户端和服务器端主要步骤2HTTP代理服务器的基本原理

3HTTP代理服务器的程序流程图

4实现HTTP代理服务器的关键技术及解决方案5HTTP代理服务器实验验证过程以及实验结果6HTTP代理服务器源代码带有详细注释。

Webhosting24:$1.48/月起,日本东京NTT直连/AMD Ryzen 高性能VPS/美国洛杉矶5950X平台大流量VPS/1Gbps端口/

Webhosting24宣布自7月1日起开始对日本机房的VPS进行NVMe和流量大升级,几乎是翻倍了硬盘和流量,价格依旧不变。目前来看,日本VPS国内过去走的是NTT直连,服务器托管机房应该是CDN77*(也就是datapacket.com),加上高性能平台(AMD Ryzen 9 3900X+NVMe),还是有相当大的性价比的。此外在6月30日,又新增了洛杉矶机房,CPU为AMD Ryzen 9...

tmhhost:暑假快乐,全高端线路,VPS直接8折,200G高防,美国gia日本软银韩国cn2香港cn2大带宽

tmhhost为2021年暑假开启了全场大促销,全部都是高端线路的VPS,速度快有保障。美国洛杉矶CN2 GIA+200G高防、洛杉矶三网CN2 GIA、洛杉矶CERA机房CN2 GIA,日本软银(100M带宽)、香港BGP直连200M带宽、香港三网CN2 GIA、韩国双向CN2。本次活动结束于8月31日。官方网站:https://www.tmhhost.com8折优惠码:TMH-SUMMER日本...

BuyVM($5/月),1Gbps不限流量流媒体VPS主机

BuyVM针对中国客户推出了China Special - STREAM RYZEN VPS主机,带Streaming Optimized IP,帮你解锁多平台流媒体,适用于对于海外流媒体有需求的客户,主机开设在拉斯维加斯机房,AMD Ryzen+NVMe磁盘,支持Linux或者Windows操作系统,IPv4+IPv6,1Gbps不限流量,最低月付5加元起,比美元更低一些,现在汇率1加元=0.7...

qq代理服务器为你推荐
回收站在哪vivo手机的回收站在哪显卡温度多少正常显卡温度多少算正常?镜像文件是什么镜像文件是什么意思?奇虎论坛奇虎是中国的吗?iphone6上市时间苹果6什么时候出来263企业邮箱设置苹果5s一键设置263企业邮箱office2007简体中文版求office2007免费版下载地址 无需破解无需激活无须密钥av终结者专杀工具AV终结者专杀工具不能删除,怎么办熊猫直播频道熊猫tv未满18岁可以直播吗basic语言教程VB基础语言是什么?
域名注册godaddy vps优惠码cnyvps 免费申请网页 独享100m 狗爹 圣迭戈 59.99美元 免费网络电视 免费smtp服务器 ntfs格式分区 秒杀汇 国外ip加速器 银盘服务 空间租赁 网购分享 秒杀品 114dns 阿里dns 服务器防御 vim 更多