LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: nm47622791

请大虾指导一个socket问题

[复制链接]
 楼主| 发表于 2003-8-21 18:04:10 | 显示全部楼层

谢谢版主libinary!

我刚才按您说的改了一下,浏览器显示的是"您所请求的网址无法读取".我想代理函数应该工作了,可能是我的测试方法不对.能不能直接用ping出来的IP?我用的是select,客户端的套接字应该是浏览器开关的吧.我只负责转发,应该与HTTP协议无关吧?这只是我的分析,不对的地方清指教!
非常期待您的指导!
发表于 2003-8-21 18:22:42 | 显示全部楼层
我也看了一下,浏览器发出的请求可以收到(我加了一条write(1, buf, iolen);在代理输出),但是网易哪边没有返回的信息,还不知道是怎么回事。
发表于 2003-8-21 19:11:56 | 显示全部楼层
我把IP换成www.gnu.org(199.232.41.10)的就好了,呵呵
 楼主| 发表于 2003-8-21 19:38:15 | 显示全部楼层

版主libinary太强了!!!!!

我刚试过了,真的可以!!太感谢了!这应该说明代理没问题吧?
用163的IP不行我想是不是端口映射的问题?怎么能解决呢?我想把它做的好一点.再次感谢!!!!
        期待您的指导!
发表于 2003-8-21 20:41:01 | 显示全部楼层
这个我也不知道了,我又试了一下www.sina.com.cn 发现它可以返回一个403错误的页面,虽然还是上不了,但是说明连接没问题,403是什么权限错误,我还没搞懂是怎么回事。
发表于 2003-8-22 08:54:53 | 显示全部楼层
403是不明原因的禁止。
 楼主| 发表于 2003-8-22 09:02:14 | 显示全部楼层

我找的HTTP协议状态码的含义

HTTP协议状态码的含义

  号码 含义
-----------------------------------------
"100" : Continue
"101" : witching Protocols
"200" : OK
"201" : Created
"202" : Accepted
"203" : Non-Authoritative Information
"204" : No Content
"205" : Reset Content
"206" : Partial Content
"300" : Multiple Choices
"301" : Moved Permanently
"302" : Found
"303" : See Other
"304" : Not Modified
"305" : Use Proxy
"307" : Temporary Redirect
"400" : Bad Request
"401" : Unauthorized
"402" : Payment Required
"403" : Forbidden
"404" : Not Found
"405" : Method Not Allowed
"406" : Not Acceptable
"407" : Proxy Authentication Required
"408" : Request Time-out
"409" : Conflict
"410" : Gone
"411" : Length Required
"412" : Precondition Failed
"413" : Request Entity Too Large
"414" : Request-URI Too Large
"415" : Unsupported Media Type
"416" : Requested range not satisfiable
"417" : Expectation Failed
"500" : Internal Server Error
"501" : Not Implemented
"502" : Bad Gateway
"503" : Service Unavailable
"504" : Gateway Time-out
"505" : HTTP Version not supported


sina返回403,我想可能是这样的访问方法不对,就和访问163一样,可能是现在的网站所作的安全措施导致的。不知道我想得对不对。
非常感谢!
期待您的指导!
发表于 2003-8-22 09:21:46 | 显示全部楼层
真是奇怪,不用代理时,上www.163.com  显示出来的是:
GET  / HTTP/1.1\r\n
Host: www.163.com\r\n
用了代理之后,就变成了:
GET http://www.163.com/ HTTP/1.1\r\n
 楼主| 发表于 2003-8-22 09:48:14 | 显示全部楼层
我以前用VC做一个基于代理的网管软件时,那两种形式都是可以的,代理只要找到http://后到第一个/的www.16 ... 地方请指教!
期待您的指导!
 楼主| 发表于 2003-8-22 09:51:16 | 显示全部楼层
我以前用VC做一个基于代理的网管软件时,那两种形式都是可以的,代理只要找到http://后到第一个/的www.163.com然后解析,连接,发送请求。不对的地方请指教!
期待您的指导!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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