Page 1 of 2

请问一下 Referer 的问题.

Posted: Jul 08 2009, 19:27
by cre
请问高人们的防盗链Referer是怎么弄的? 我试了几个都觉得很郁闷.

这个大部分可以解决,可是遇到了sina就完蛋.

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: All del out"
URL = "\w.(jpg|gif|png)"
Match = "*"
比如这个google图片搜索,应该怎么写呢? http://images.google.cn/imglanding?imgu ... 1#start=80

添加个过滤器把 photo.sina 的图片后缀加上个jpg可以解决,可是这.....恶搞了.

Code: Select all

[Patterns]
Name = "New HTML filter"
Active = TRUE
Limit = 256
Match = ""(http://\2.photo.sina.com.cn/\3)","
Replace = ""http://\2.photo.sina.com.cn/\3.jpg","
本来要写成下面这样 (这个不行,试试的) :

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer:  Image del2"
URL = "$IHDR(Content-Type: image/*)$URL(*)"
Match = "*"
却写错成了:

Code: Select all

[HTTP headers]
In = FALSE
Out = FALSE
Key = "Referer:  Image del"
URL = "$URL(*)"
Match = "*"
Replace = "$IHDR(Content-Type: image/*)"
竟然成功了???!!!汗个.可是这也太....%^&*##$@#$#@%#$%了吧.应该怎么去搞这没后缀名的?

超晕呀.晕死,还有请问下这个规则次序.
下面这个规则造成 uushare.com 不显示头像,比如 http://www.uushare.com/user/yogogou

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: All del out"
URL = "\w.(jpg|gif|png)"
Match = "*"
用这个规则去修正也不行

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer:    1 uushare"
URL = "$URL(\wuushare.com*.(jpg|gif|png))"
Match = "*"
Replace = "www.uushare.com"
不管命名为Referer: 1 uushare 还是 Referer:uushare (区别就是在那个All del前面或者后面) 都修正不了?
单独用Referer: 1 uushare 时候正常当然实际不用去替换.
怎么才能行?非得在all del 弄个列表限定?

如果

Code: Select all

Referer: 1
Referer: 2
Referer: 3
都不限定网站,都匹配,最后结果是用哪个处理的?

Re: 请问一下 Referer 的问题.

Posted: Jul 09 2009, 01:32
by Bonnie

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: Fake Referer (out)"
URL = "$LST(referer)"
Replace = "\1"
在 list 里写需要改 referer 的 url 并把新的 referer 赋值给 \1

Re: 请问一下 Referer 的问题.

Posted: Jul 09 2009, 13:00
by cre
Bonnie wrote:

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: Fake Referer (out)"
URL = "$LST(referer)"
Replace = "\1"
在 list 里写需要改 referer 的 url 并把新的 referer 赋值给 \1
因为就一个网站有问题没想到用 $LST(),想着用一个去修下.闹半天只好用个 ^$LST()
谢谢了,我用了两个列表.防止有的网站必须 referer 还盗链.好像有点多余- -!请指教.

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer:  BE Referer"
URL = "SURL(\w$LST(Referer))"
Match = "*"
Replace = "\1"

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer:  NO Referer"
URL = "$URL(\w^$LST(Referer))"
Match = "*"
一个lst干俩事,呵呵....
至于123都匹配倒是试了,匹配一个图片用了3个替换123 abc def,总是referer最后个.真郁闷....谢谢bon.
好像就是....如果不用URL限定^$LST,直接用 * 替换没,下面加个匹配 uushare.com 替换为 http://www.uushare.com 还出不来,奇怪就在这了.

Re: 请问一下 Referer 的问题.

Posted: Jul 09 2009, 20:59
by Ray4
我就用了这一条

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: Hide where we've been (Out)"
Match = "$LST(referer)"
Replace = "\1"
$LST(referer) 里如下

Code: Select all

$URL(http://([a-z0-9]++.|)photo.store.qq.com/http_imgload.cgi?/rurl	) $SET(1=\u)
$URL(http://[^/.]++.baidu.com/*/item/) $SET(1=\u)
$URL(http://[^/]++.sz1001.net/) $SET(1=\u)
$URL(http://[0-9]+.img.pp.sohu.com.cn/images/blog/*.(png|jpg)) $SET(1=\u)
$URL(http://[a-z]+[#1:100].greendown.cn/) $SET(1=\u)
$URL(http://img[#1:200].tianya.cn/photo/) $SET(1=\u)
$URL(http://files.xici.net/) $SET(1=\u)
$URL(http://photos.album.mop.com/) $SET(1=\u)
$URL(http://\w.blogger.com/) $SET(1=\u)
$URL(http://\w.it168.com/) $SET(1=\u)
$URL(http://img.cnbeta.com/) $SET(1=\u)
自己一直使用得挺好

Re: 请问一下 Referer 的问题.

Posted: Jul 10 2009, 03:15
by Bonnie
ls 你 cnbeta 的 referer 还能正常使用? 我的怎么已经失效了...
我用的是 yahoo pipes 的 feed

Re: 请问一下 Referer 的问题.

Posted: Jul 10 2009, 07:42
by Ray4
cb 的 referer 印象中是见到某个转贴 cb 文章的,图片不能正常显示而设

另外,cb 的全文输出我用的是这个(更新速度慢) http://feeds2.feedburner.com/cnbetafullrss

Re: 请问一下 Referer 的问题.

Posted: Jul 10 2009, 16:50
by Bonnie
看了一下日志, 输出如下:

Code: Select all

BlockList 2624: in referer, line 1

+++GET 2624+++
GET /topics/cell.gif HTTP/1.1
Host: img.cnbeta.com
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/530.5 (KHTML, like Gecko) Chrome/2.0.172.33 Safari/530.5
Referer: 
Accept: */*
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3
Connection: keep-alive
这不正常吧?
list 里我的也是 $URL(http://img.cnbeta.com/) $SET(1=\u), 可是输出的 referer 竟然为空?

Re: 请问一下 Referer 的问题.

Posted: Jul 10 2009, 22:21
by phoenix
why wrote:这个大部分可以解决,可是遇到了sina就完蛋.
删除 Referer 并不是解决防盗链的灵丹妙药。至于 sina ,你可以开着 log window 看看能正常显示图片时的 Referer 是什么。
why wrote: 如果

Code: Select all

Referer: 1
Referer: 2
Referer: 3
都不限定网站,都匹配,最后结果是用哪个处理的?
1、2、3依次处理。
Bonnie wrote: 这不正常吧?
list 里我的也是 $URL(http://img.cnbeta.com/) $SET(1=\u), 可是输出的 referer 竟然为空?
保存 list 后有没有 reload ?

Re: 请问一下 Referer 的问题.

Posted: Jul 11 2009, 00:55
by Bonnie
每次都reload list的,浏览器,prox,也都重启过数次了.

这个list不是最近添加的,是一直就有的
我这几天做的也只是由于规则丢失重新写了全部规则而已.
规则是:

Code: Select all

[HTTP headers]
In = FALSE
Out = TRUE
Key = "Referer: Fake Referer (out)"
URL = "$LST(referer)"
Replace = "\1"

Re: 请问一下 Referer 的问题.

Posted: Jul 11 2009, 01:54
by Bonnie
晕 我删掉自己的规则用Ray4的规则后referer就生效了.
看来还是规则的问题.
难道是"out"没有首字母大写的缘故?