首页 新闻 搜索 专区 学院

Http/1.1 404 资源不存在,怎么实现的?

0
悬赏园豆:100 [已解决问题] 解决于 2009-03-13 22:03

下边的段为讯雷的下载信息

前一个没有通过页面(加载该SWF的页面)访问下载的Request 和Response

后一个是通过页面(加载该SWF的页面)访问下载的Request 和Response

17173上flash小游戏文件不知道做了什么样的处理,如果从17173网站访问过的swf可以从地址栏直接敲地址然后显示出SWF的内容,但没有访问过的话显示的却是Http 404 资源不存在错误;用讯雷也只有访问过的页面SWF可以下载,不知道原理是怎么样的;

下边是两段Header 第一段为没有访问过页面的,第二段为访问过页面的.

2009-03-13 00:38:22 连接files2.17173.com:80...
2009-03-13 00:38:22 连接files2.17173.com:80成功
2009-03-13 00:38:22 GET /mxflash/2912865432132132132.swf HTTP/1.1
2009-03-13 00:38:22 Accept: */*
2009-03-13 00:38:22 Cache-Control: no-cache
2009-03-13 00:38:22 Connection: close
2009-03-13 00:38:22 Cookie: SUV=1236778498576656; IPLOC=CN3100
2009-03-13 00:38:22 Host: files2.17173.com
2009-03-13 00:38:22 Pragma: no-cache
2009-03-13 00:38:22 Referer: http://files2.17173.com/mxflash
2009-03-13 00:38:22 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; )
2009-03-13 00:38:22 HTTP/1.1 404 Not Found
2009-03-13 00:38:22 Date: Thu, 12 Mar 2009 16:38:05 GMT
2009-03-13 00:38:22 Server: Apache
2009-03-13 00:38:22 Content-Length: 229
2009-03-13 00:38:22 Connection: close
2009-03-13 00:38:22 Content-Type: text/html; charset=iso-8859-1

 

//下边为能下载的

2009-03-13 00:58:28 连接files2.17173.com:80...
2009-03-13 00:58:28 连接files2.17173.com:80成功
2009-03-13 00:58:28 GET /mxflash/2008121056431321321231.swf HTTP/1.1
2009-03-13 00:58:28 Accept: */*
2009-03-13 00:58:28 Cache-Control: no-cache
2009-03-13 00:58:28 Connection: close
2009-03-13 00:58:28 Cookie: SUV=1236778498576656; IPLOC=CN3100
2009-03-13 00:58:28 Host: files2.17173.com
2009-03-13 00:58:28 Pragma: no-cache
2009-03-13 00:58:28 Range: bytes=9320127-
2009-03-13 00:58:28 Referer: http://files2.17173.com/mxflash
2009-03-13 00:58:28 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; )
2009-03-13 00:58:28 HTTP/1.1 206 Partial Content
2009-03-13 00:58:28 Date: Thu, 12 Mar 2009 16:58:11 GMT
2009-03-13 00:58:28 Server: Apache
2009-03-13 00:58:28 Last-Modified: Wed, 10 Dec 2008 05:54:43 GMT
2009-03-13 00:58:28 ETag: "1b827b-bd89c1-e57f6ec0"
2009-03-13 00:58:28 Accept-Ranges: bytes
2009-03-13 00:58:28 Content-Length: 3101442
2009-03-13 00:58:28 Content-Range: bytes 9320127-12421568/12421569
2009-03-13 00:58:28 Connection: close
2009-03-13 00:58:28 Content-Type: application/x-shockwave-flash
2009-03-13 00:58:28 开始读取数据...
2009-03-13 00:58:31 被中止,退出

Janja的主页 Janja | 初学一级 | 园豆:50
提问于:2009-03-13 01:16
< >
分享
最佳答案
0

 /mxflash/2912865432132132132.swf  并不是实际存在的,而是动态生成的,而要服务器生成这个Flash(或者仅仅是一个rewrite 索引) 必须要调用展示这个Flash的页面。

如果你不调用那个页面,服务器就找不到这个动态的文件。

如果你是要做一个蜘蛛来抓取的话,你需要在抓取前先访问一下那个页面。

下面这个小组专门讨论搜索技术,你也可以到这里来讨论

http://space.cnblogs.com/group/search/ 

eaglet | 专家六级 |园豆:17119 | 2009-03-13 06:54
其他回答(1)
0

if(如果没有访问过)

 throw new HttpException(404, "网页未找到");

这个有没有访问过可以通过记录cookie或session或写到数据库里进行记录

重典 | 园豆:2442 (老鸟四级) | 2009-03-13 11:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册