Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 404在telnet中找不到,在浏览器中工作正常_Python_C_Http_Telnet - Fatal编程技术网

Python 404在telnet中找不到,在浏览器中工作正常

Python 404在telnet中找不到,在浏览器中工作正常,python,c,http,telnet,Python,C,Http,Telnet,我遇到了一个非常恼人的问题,当我在浏览器中打开url()时,它工作得很好。。但当我尝试在bash上通过telnet访问它时,我发现404找不到 我的确切终点站: $telnet celebs.widewallpaps.net 80 HEAD/md/a/adriana lima/1440/adriana-lima-1440x900-002.jpg HTTP/1.0 [输入] [输入] 未找到HTTP/1.1 404 服务器:nginx 日期:2010年5月23日星期日格林尼治标准时间21:36:0

我遇到了一个非常恼人的问题,当我在浏览器中打开url()时,它工作得很好。。但当我尝试在bash上通过telnet访问它时,我发现404找不到

我的确切终点站:

$telnet celebs.widewallpaps.net 80

HEAD/md/a/adriana lima/1440/adriana-lima-1440x900-002.jpg HTTP/1.0 [输入] [输入]

未找到HTTP/1.1 404

服务器:nginx

日期:2010年5月23日星期日格林尼治标准时间21:36:05

内容类型:text/html;字符集=windows-1251

内容长度:166 连接:关闭


请帮助我,因为我正在尝试制作一个C批处理下载程序,它几乎与telnet一样工作。

您没有传递主机头。根据HTTP/1.1,您需要告诉web服务器您希望与哪个虚拟主机对话。即使在请求中指定了HTTP/1.0,今天99%的服务器也只会使用HTTP/1.1

jb@apto % telnet celebs.widewallpapers.net 80
...
HEAD /md/a/adriana-lima/1440/Adriana-Lima-1440x900-002.jpg HTTP/1.1
Host: celebs.widewallpapers.net

HTTP/1.1 200 OK
Server: nginx
Date: Sun, 23 May 2010 22:08:36 GMT
Content-Type: image/jpeg
Connection: close
Last-Modified: Sun, 27 Apr 2008 14:30:17 GMT
ETag: "4784e0-264b0-48148df9"
Accept-Ranges: bytes
Content-Length: 156848

Connection closed by foreign host.

calmh提供的答案可能是正确的,但您可以使用
wireshark
和/或tcpdump捕获这两个事务(使用telnet和浏览器),然后检查它们的区别。对于您的telnet版本,浏览器可能会发送很多不必要甚至不准确的内容,但也会有一些需要的内容。您可能还需要查看工具
wget
(web get)、
curl
(复制URL)和
nc
(网络cat)。Telnet可能会在进入直通模式之前发送一些终端设置信息。为什么会有python标记?@puddingfox可能会生成视图。不过,一些管理员应该把它去掉。