下面是一个先前我用socket实现HTTP代理服务器的例子,代码很简单我就不一一解析了,要注意的是:当该代理服务器收到IE发来的请求时,要将IE请求行中的webserver的域名(或者IP)剥去,再将请求转发给webserver,如果不注意这点而是直接毫无处理的把IE请求信息直接发给webserver某些网站会显示不了网页,比如新浪,pfan,这是测试时发现的,其他就没什么可以说的了。实际上能否完成这个简单的HTTP proxy server可以看出对HTTP协议的熟悉程度,只要有一定的sock编程基础并熟悉了HTTP协议的工作流程,那我想就没什么障碍了。
1