小网站每个月光是谷歌爬虫的 CDN 流量费用就要 30 元+? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
wyan453351466
V2EX    程序员

小网站每个月光是谷歌爬虫的 CDN 流量费用就要 30 元+?

  •  2
     
  •   wyan453351466 2017-11-22 17:23:13 +08:00 11477 次点击
    这是一个创建于 2954 天前的主题,其中的信息可能已经有所发展或是发生改变。

    根据我后台的数据统计,谷歌的爬虫保守估计一天请求了我的网站 3 万次。

    这还不算其他的一些搜索引擎的请求( yandex 之类的)。

    这个数据正常吗?

    如果一个恶意爬虫,user-agent 冒充是 Google。这个有办法识别吗?

    5D821D07-CC01-4522-A2C7-F02FB50C48B5.png

    下面晒一下昨天又拍云的费用账单,光是欧美的动态资源加速费用就 1.64 元(我是大陆中文网站哪会有欧美的用户?)。加上 https 加速和 cdn 流量费用是 2 元多。按这个标准,每个月我要付费 60 多块钱给欧美的爬虫!

    我的真实 PV 才 3000 啊(百度统计的数据)。每日动态资源请求次数居然可以有 8 万,你敢信?

    QQ20171122-171923.png

    所以现在是要限制一下谷歌爬虫的请求频率?这个谷歌官方应该有设置。

    我想求教大家的是:

    1. 如何准确的区分真实搜索引擎,和恶意爬虫?( user-agent 判断貌似不靠谱)

    2. 如何更好的反爬虫?判断一个 IP1 分钟、1 小时、1 天内的请求次数?

    3. 更关键的是:我想求教大牛:有没有真实案例自己网站日均 PV10 万+的?开 HTTPS 的情况下,这样的网站一个月的 CDN、流量费用要多少钱呢?( HTTPS 的 CDN 请求也要钱的!阿里云和又拍云的价格是:1 万次 0.05 元)

    45 条回复    2017-11-24 17:07:28 +08:00
    yulgang
        1
    yulgang  
       2017-11-22 17:40:13 +08:00   1
    Zzzzzzzzz
        2
    Zzzzzzzzz  
       2017-11-22 17:54:34 +08:00
    robots 里设 Crawl-delay, 但几大厂流氓起来也有可能不管这个

    判断是否爬虫也没什么好办法, 理论上可以反查 IP 的 PTR, 几大搜索引擎的爬虫一般都有注明, 但是搜索引擎为了防止作弊, 都有一些标称 IP 段外的 IP 做随机访问, 大规模针对性输出的反而可能有反效果

    所以, 硬扛吧
    kaer
        3
    kaer  
       2017-11-22 18:09:44 +08:00
    日 PV 22 万左右 服务器费用加 CDN 费用 每月接近 7K-10k
    kungfuchicken
        4
    kungfuchicken  
       2017-11-22 18:25:33 +08:00
    其实,你可以换一家动态加速不要钱的就解决啦
    paranoiagu
        5
    paranoiagu  
       2017-11-22 19:14:39 +08:00 via Android   1
    没有国外用户,你可以关了国外加速。
    0ZXYDDu796nVCFxq
        6
    0ZXYDDu796nVCFxq  
       2017-11-22 19:19:41 +08:00 via iPhone
    IP 贴出来啊,如果我是恶意爬虫,我也肯定用 Google 或者百度的 UA
    Le4fun
        7
    Le4fun  
       2017-11-22 19:52:26 +08:00
    国外用户是不是部分人开了梯子没关访问你的网站
    yytsjq
        8
    yytsjq  
       2017-11-22 19:56:48 +08:00   5
    验证 Googlebot
    https://support.google.com/webmasters/answer/80553?hl=zh-Hans

    要验证 Googlebot 是否为调用方,请执行以下操作:

    1. 使用 host 命令对您日志中访问服务器的 IP 地址运行反向 DNS 查找。
    2. 验证该域名是否位于 googlebot.comgoogle.com 中。
    3. 对在第 1 步中使用 host 命令检索到的域名运行正向 DNS 查找。验证该域名与您日志中访问服务器的原始 IP 地址是否一致。

    示例 1:

    > host 66.249.66.1
    1.66.249.66.in-addr.arpa domain name pointer crawl-66-249-66-1.googlebot.com.

    > host crawl-66-249-66-1.googlebot.com
    crawl-66-249-66-1.googlebot.com has address 66.249.66.1


    示例 2:

    > host 66.249.90.77
    77.90.249.66.in-addr.arpa domain name pointer rate-limited-proxy-66-249-90-77.google.com.

    > host rate-limited-proxy-66-249-90-77.google.com
    rate-limited-proxy-66-249-90-77.google.com has address 66.249.90.77
    opengps
        9
    opengps  
       2017-11-22 20:00:25 +08:00
    你可以去谷歌设置下爬取频率
    schema
        10
    schema  
       2017-11-22 20:19:35 +08:00
    你说没有海外业务,那关闭国外加速,关闭国外 HTTPS 就好很多了
    isCyan
        11
    isCyan  
       2017-11-22 20:22:53 +08:00
    动态资源过 CDN 真的很费钱,动静分离吧
    Loyalsoldier
        12
    Loyalsoldier  
       2017-11-22 20:28:07 +08:00
    又拍云的 动态资源加速 是所有项目中最贵的。问过客服,说:只要页面设置缓存超过 1 分钟,就不会被又拍云认为是动态资源。楼主可以试试把不重要的内容缓存 2 分钟……

    我们公司就是这样一个月省下 3K 的
    wyan453351466
        13
    wyan453351466  
    OP
       2017-11-22 21:04:17 +08:00 via iPhone
    @Loyalsoldier 如果缓存 1 分钟的话,那类似用户登录的操作,还可以实时更新登录状态吗 我回头咨询一下他们客服。现在首页不可以缓存,其他页面都可以,就看登录这个能不能行了
    wyan453351466
        14
    wyan453351466  
    OP
       2017-11-22 21:11:02 +08:00 via iPhone
    @paranoiagu 嗯,谢谢!我明天看看又拍云怎么设置。不过即使关闭加速,请求费用和 https 还是省不下来的。除非国外可以走不同的 dns。

    这里又涉及到一个问题:如果国外直接访问源站的话,暴露服务器的 ip 会不会有安全问题
    Loyalsoldier
        15
    Loyalsoldier  
       2017-11-22 21:13:37 +08:00
    @wyan453351466 #13

    登录页面当然不可以缓存……
    Loyalsoldier
        16
    Loyalsoldier  
       2017-11-22 21:16:29 +08:00
    @wyan453351466 #13

    但是搜索引擎应该也不会爬登录页吧,或者你设置一下 robots.txt 文件的爬虫规则
    wyan453351466
        17
    wyan453351466  
    OP
       2017-11-22 21:19:08 +08:00 via iPhone
    @Loyalsoldier 不是,我的意思是,每个页面的头部都会显示登录状态的。如果登录了,其他页面被缓存,岂不是看不到登录状态了(还是显示未登录)
    Loyalsoldier
        18
    Loyalsoldier  
       2017-11-22 21:23:05 +08:00
    @wyan453351466 #17

    是的……缓存只能用在不涉及用户状态变更的页面
    wyan453351466
        19
    wyan453351466  
    OP
       2017-11-22 21:27:47 +08:00 via iPhone
    @Loyalsoldier 所以就没办法了
    mcfog
        20
    mcfog  
       2017-11-22 22:15:23 +08:00 via Android
    @wyan453351466 动静分离的第一步就是把带状态的内容和静态内容分离啊,静态首页显示未登录的或者空白的头,js 请求登录态后再画头呗
    wyan453351466
        21
    wyan453351466  
    OP
       2017-11-22 22:34:46 +08:00 via iPhone
    @mcfog 大神啊!之前看到一些大网站这么做的。没往这方面想。谢谢啦
    wyan453351466
        22
    wyan453351466  
    OP
       2017-11-22 22:36:47 +08:00 via iPhone
    @mcfog 那这么说首页其实也可以静态的。首页的内容每次刷新会变化,这个也可以用 js 异步获取。不过我多了解下 seo 方面有什么影响。即使不优化首页,其他页面全部静态化,也要减少很多的动态费用了
    huangunic0rn
        23
    huangunic0rn  
       2017-11-22 22:38:20 +08:00 via Android
    host 反解域名就行。带 Google 当然是谷歌
    wdlth
        24
    wdlth  
       2017-11-22 22:43:04 +08:00
    国外的一般用云减速 CF 顶着,用网宿又拍什么的太壕了……
    woshinide300yuan
        25
    woshinide300yuan  
       2017-11-22 23:13:12 +08:00
    哈哈,访问区域限制,只支持大陆?
    然后关闭海外加速?
    然后……根据 UA 限制一下抓取频率?
    然后…… 解析到 127.0.0.1 /DOGE
    哈哈~
    ericgui
        26
    ericgui  
       2017-11-23 00:30:09 +08:00
    @kaer 请问您的网站是不是已经盈利了呢?每月开支这么大,否则撑不下去的吧?
    Technetiumer
        27
    Technetiumer  
       2017-11-23 00:38:50 +08:00 via Android
    DNS 分解析

    海外 Incapsule 免
    又拍
    mytsing520
        28
    mytsing520  
    PRO
       2017-11-23 01:08:16 +08:00
    @woshinide300yuan 他的访问区域功能,默认情况下开启境外,即开启境外节点,这部分结算费用比较高;关闭境外后,境外访问该网站则只使用中国大陆节点,而不是境外禁止访问
    heat
        29
    heat  
       2017-11-23 07:25:37 +08:00 via iPhone
    @kaer 日 PV30 万,每个月费用是你的二分之一……
    NowTime
        30
    NowTime  
       2017-11-23 08:14:25 +08:00 via Android
    Google 等其它爬虫不会加载网页中的 js,所以你添加的 百度统计 代码,统计不到这些爬虫的访问记录。
    shakoon
        31
    shakoon  
       2017-11-23 08:24:11 +08:00
    pv 3k 其实不用 cdn 也没多大问题,或者换个免费的好了
    boyxupers
        32
    boyxupers  
       2017-11-23 08:54:53 +08:00 via iPhone
    @shakoon 同感,小站上什么 cdn ?
    ss0xt
        33
    ss0xt  
       2017-11-23 09:21:55 +08:00
    怕不是上次你爬煎蛋,过分,有人来搞你了?(滑稽
    ninestep
        34
    ninestep  
       2017-11-23 09:47:17 +08:00
    静态资源防盗链,爬虫爬你的静态文件干嘛,肯定是有人用你的静态资源了
    a1044634486
        35
    a1044634486  
       2017-11-23 09:50:30 +08:00
    感觉 33 楼说的有道理
    wyan453351466
        36
    wyan453351466  
    OP
       2017-11-23 10:03:27 +08:00
    @ss0xt
    @a1044634486

    这件事我也不想再做太多的解释了。在遇到事情的严重性后,我已经在自己的网站下架了这个版块,并停止了对煎蛋的爬取。(仅凭我一个人一台渣渣服务器就可以对一个网站进行 ddos 攻击,那您真的是太高看我了)
    kaer
        37
    kaer  
       2017-11-23 14:22:56 +08:00
    @ericgui 不盈利早亏死了
    IzY
        38
    IzY  
       2017-11-23 15:11:24 +08:00 via iPhone
    @kaer 还接广告不,1w uv 提成 100
    mymuw
        39
    mymuw  
       2017-11-23 17:37:27 +08:00
    试试这个 cdn 很便宜很稳定 www.kekaoyun.com
    lengyihan
        40
    lengyihan  
       2017-11-23 19:09:55 +08:00 via Android
    用免费的吧,
    paranoiagu
        41
    paranoiagu  
       2017-11-23 19:27:50 +08:00 via Android
    @wyan453351466 不会用原站的,就是国外用户访问了国内的 CDN,速度慢一点。
    paranoiagu
        42
    paranoiagu  
       2017-11-23 19:29:49 +08:00 via Android
    @mymuw 回源端口支持非标准端口吗?现在电信封了 80 和 443。
    Hmily
        43
    Hmily  
       2017-11-24 09:52:40 +08:00
    可以在域名解析上区分析蜘蛛线路,可以选择重要蜘蛛回源不走 cdn,cdn 过来的假蜘蛛可以屏蔽。
    8355
        44
    8355  
       2017-11-24 10:26:12 +08:00
    其实你的 PV 很可能超过 3000 因为现在浏览器的广告屏蔽插件都会屏蔽百度统计的 js 加载 所以实际上可能没有你看到的那么少.
    kaer
        45
    kaer  
       2017-11-24 17:07:28 +08:00
    @IzY 开什么玩笑咯。我们靠这点广告吃饭早就倒闭了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3777 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 05:08 PVG 13:08 LAX 21:08 JFK 00:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86