首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么当我连接到一个特定的网页时,我会收到一个404错误?

为什么当我连接到一个特定的网页时,我会收到一个404错误?
EN

Stack Overflow用户
提问于 2013-09-10 15:13:25
回答 2查看 848关注 0票数 2

我试图从Metacritic获得一些视频游戏数据,并且我一直在这个网页上得到404错误:

代码语言:javascript
复制
http://www.metacritic.com/game/playstation-2/ico

connect命令非常基本:

代码语言:javascript
复制
Jsoup.connect(url).userAgent("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36").timeout(0).get();

在我尝试连接到的数百个类似的视频游戏网页中,这是唯一每次返回404的网页。知道为什么吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-09-10 15:28:32

服务器正在返回404。

代码语言:javascript
复制
$ curl -I http://www.metacritic.com/game/playstation-2/ico
HTTP/1.1 404 Not Found
Content-Type: text/html; charset=UTF-8
Server: Apache
X-Varnish: 868026494
Date: Tue, 10 Sep 2013 15:26:21 GMT
Connection: keep-alive

它还返回非404外观的内容这一事实并不影响Jsoup;它只是查看服务器在header中给出的代码。

欢迎来到“什么东西是如何工作的?”互联网的世界。)有趣的是,curl -I http://www.metacritic.com/game/playstation-2/SDKFJSDF返回200 OK的header代码,但显示内容为404的页面。我有没有说过互联网上到处都是垃圾?

您可以通过在ignoreHttpErrors(true)对象上调用Connection.Request来忽略这些错误。

票数 7
EN

Stack Overflow用户

发布于 2014-07-04 04:28:00

我意识到你的问题已经很晚了,但我今天遇到了这个问题,终于意识到Metacritic在哪里搞砸了。看起来,每当请求*ico文件(或大多数图像)时,它们都有一个apache配置来提供404错误。他们可能有这样的设置:

RewriteRule (js|ico|gif|jpg|png|css|xml)$ - [R=404,L,NC]]

在延期之前他们错过了一段时间。因此,任何以这些词结尾的内容,即使它们是游戏名称的一部分,都会返回带有内容的404。证明:

代码语言:javascript
复制
$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/foojpg'
HTTP/1.1 404 Not Found

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/foojpgz'
HTTP/1.1 200 OK

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/fooxml'
HTTP/1.1 404 Not Found

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/foocss'
HTTP/1.1 404 Not Found

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/foojs'
HTTP/1.1 404 Not Found

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/fooico'
HTTP/1.1 404 Not Found

$ curl -I -H 'User-Agent: Mozilla...' 'http://www.metacritic.com/game/pc/fooicoo'
HTTP/1.1 200 OK

我觉得挺有趣的:)不管怎样,谜团解决了。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18722674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档