作者casiopea (Casiopea)
看板PHP
标题[请益] PHP header抓无名的照片
时间Fri Oct 13 00:13:31 2006
http://chiucj.homeip.net/
我想要写类似这个站的程式
不过总是没办法像他这麽厉害 可以让user直接连到无名看无名的图
目前最多做到是让server上去把图抓下来 user一定要透过server才能看到图
可是如此一来我的主机就必须负担庞大的图档流量
不晓得有没有办法用其他方式送referer给无名?
简单来说,有没有办法写一支程式,负责解析相簿html中的相片(regular expression)
然後user是透过这支程式来浏览相簿,而且图是直接从user端连到无名
不晓得该怎麽做orz 研究了好久还是不知道该怎麽办
p.s. 我现在的程式是用 stream_context_create, 搭配 fopen 去丢header
希望这个问题别太笨orz 感谢各位
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.231.8.41
1F:推 buganini:好像还有cookie的问题 10/13 00:25
3F:→ buganini:.aspx 10/13 00:25
5F:→ buganini:36/ 10/13 00:26
6F:推 casiopea:感谢,这两篇我也都看过了orz 10/13 00:27
7F:→ buganini:啊...後面这篇不是,不过也有点关系s 10/13 00:27
8F:→ casiopea:他们防堵的机制我猜是判断referer跟user-agent 10/13 00:27
9F:→ casiopea:如果用 wget 只要加 --referer参数就可以直接抓了 10/13 00:28
10F:→ casiopea:现在只要能让我用 php 控制 browser 送出header给无名 10/13 00:29
11F:→ casiopea:就有解了..可是php是server side... 10/13 00:29
12F:→ casiopea:我也找了 javascript可否送出header...但似乎不行? 10/13 00:30
13F:推 buganini:XMLHttpRequest 加 referer header可吗? 10/13 00:30
14F:→ casiopea:XMLHttpRequest只能抓相同domain底下的东西 10/13 00:31
16F:→ casiopea:即使是 www.abc.com 去抓 abc.com也不行的样子 10/13 00:31
17F:推 LPH66:我的测试是只要加上referer就可以抓到图了 10/13 00:34
18F:推 casiopea:ok 感谢 我也有试过cURL..看来是我程式有错XD 感激! 10/13 00:36
19F:推 buganini:cURL可以控制client的http header吗? 10/13 00:37
20F:→ buganini:其实我怀疑他先用个隐形的iframe让你的browser cache图 10/13 00:38
21F:推 LPH66:其实是用cURL送一个request给无名那边这样 10/13 00:38
22F:→ buganini:然後再link就会看到cache的图 10/13 00:38
23F:推 casiopea:请教一下LPH66, 用cURL送request给无名 是response到 10/13 00:40
24F:→ casiopea:user还是 php 执行的主机?? 10/13 00:41
25F:→ LPH66:到php执行的主机 不过如果目的只是要看图的话这样够了 10/13 00:49
26F:→ LPH66:(虽然这样还是闪不掉那个流量啦) 10/13 00:49
27F:推 casiopea:orz..所以这样就是吃主机的流量了... 10/13 00:49
28F:→ casiopea:我现在已经做到这样 不过平均浏览一本相簿就要吃掉7~8MB 10/13 00:50
29F:→ casiopea:想搞大的话....流量很恐怖orz.. 10/13 00:50
30F:→ casiopea:或许 buganini 提供的想法可行XD 用iframe 10/13 00:51
31F:→ casiopea:by the way 我家用 hinet, php主机是学网 透过主机看图 10/13 00:51
32F:→ casiopea:快多了XDDD 而且没有广告 比开学网proxy还爽 10/13 00:52
33F:推 buganini:刚刚是过了可以,不过要想办法disable里面的script 10/13 00:57
34F:→ buganini:不然有时候因为框架因素会遇到javasript error 10/13 00:57
35F:→ antontw:curl 是最快的吧? 10/16 12:57
36F:推 wkliu:我有写 curl 的用法, 还没全写完你可以参考一下 10/21 21:08