V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
fcicq

基于缓存服务器的开源镜像

  •  
  •   fcicq · Jun 3, 2016 · 4976 views
    This topic created in 3622 days ago, the information mentioned may be changed or developed.

    思路来自 /t/282827 , 具体 IP 地址也请那边找.

    OpenWRT 的镜像比较慢. 当然你可能知道也可能不知道有 http://openwrt.mirrors.ustc.edu.cn/

    由 script/download.pl 代码可知, 配置方法有三种.

    1. 一行一个写入 script/localmirrors
    2. 以分号隔开, CONFIG_LOCALMIRROR=URI 写入 .config
    3. 以分号隔开, 设置环境变量 DOWNLOAD_MIRROR

    当然既然老司机们找到了方法, 在原始域名前加缓存服务器 IP, 就不需要多说了.

    包括 Alpine Linux 等等之类的项目在墙内好像镜像也不多, 都可以类似的这样做. 但是需要注意的是最好不要用在 security.ubuntu.com 等对时效性要求很高的服务上, 除非自己设计缓存的时候能够跳过索引文件或者设置更短的缓存有效时间.

    所以终极解法应该是在朝内的某 AppEngine 上设置一个只做 302 的转发服务? 这就等于主动复制了劫持服务器的方案. 为了透明度这个必须要开源才有人敢用吧, 虽然包管理器都会验证 hash 和签名.

    7 replies    2018-07-23 06:05:43 +08:00
    dphdjy
        1
    dphdjy  
       Jun 3, 2016 via Android
    开源不代表部署版本没问题
    fcicq
        2
    fcicq  
    OP
       Jun 3, 2016
    @dphdjy 所以可以考虑做成 nginx config file 自己部署在本地, 这样如何?
    EPr2hh6LADQWqRVH
        3
    EPr2hh6LADQWqRVH  
       Jun 3, 2016
    66666
    htfy96
        4
    htfy96  
       Jun 3, 2016 via Android
    一致性会不会出问题…比如说索引文件没更新 但旧版本的实际文件已经没了
    fcicq
        5
    fcicq  
    OP
       Jun 3, 2016
    @htfy96 好问题. 所以如果知道索引文件名的话最好做一个 bypass 处理. 或者根据不同的项目用白名单扩展名, debian 系只开放 deb, arch 只开放 pkg.tar.xx, alpine 只开放 apk 等等.
    VmuTargh
        6
    VmuTargh  
       Jun 3, 2016
    alpine 在 ustc 有,莫名其妙的就有了
    helloworld12
        7
    helloworld12  
       Jul 23, 2018
    这个方法还有效吗?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1040 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 17:55 · PVG 01:55 · LAX 10:55 · JFK 13:55
    ♥ Do have faith in what you're doing.