airbotgo
V2EX  ›  问与答

如何让 YAML 格式的配置文件支持在线访问?

  •  
  •   airbotgo · Jun 2, 2023 · 2614 views
    This topic created in 1083 days ago, the information mentioned may be changed or developed.
    小猫咪的 .yaml 配置文件,自用。

    GitHub 新手,新建项目并设置为“私密”,上传 .yaml 配置文件到项目,通过链接访问文件,提示 404 。
    点击 GitHub 页面的「 raw 」按钮,会打开一个带 token 的页面,再次尝试访问,发现有时候 404 ,有时候可以访问(正常生成本地配置文件),但很快 404.
    raw 链接类似这样的: https://raw.githubusercontent.com/xxxxxx/MyDoc/main/xxxxx.yaml?token=GHSAT0AAAAAAB7CDXFNPOSVZCL45K4LUJZYDONSDAPA

    这是什么原因?
    如果我想让一个 .yaml 配置文件只有自己在线访问( macOS 、Android 两个客户端),该如何操作?
    (不想用第三方提供的托管服务)
    18 replies    2023-06-02 15:13:18 +08:00
    litchinn
        1
    litchinn  
       Jun 2, 2023
    可以用 gist ,不想用托管服务就自己部署个配置中心,appolo 、nacos 啥的,不想这么重量级就 nginx 设置下不就可以访问了
    airbotgo
        2
    airbotgo  
    OP
       Jun 2, 2023
    可以用 gist
    nginx 设置下
    ---------
    能再多提供一些信息么?非程序员,这些都不懂。我搜搜看怎么搞?
    SenLief
        3
    SenLief  
       Jun 2, 2023
    直接用 gist.github.com 托管私密文件即可,不要公开。
    airbotgo
        4
    airbotgo  
    OP
       Jun 2, 2023
    @SenLief
    @litchinn
    搜了下 gist ,目前正尝试中……感谢!
    baobao1270
        5
    baobao1270  
       Jun 2, 2023
    @airbotgo
    @litchinn
    Gist 没用。Secret 的 Gist 也一样要带 cookies 访问,Public 的 Gist 会显示在 gist.github.com/<yourusername> 里
    Nasei
        6
    Nasei  
       Jun 2, 2023
    你去 github 个人设置里,找到最后有一个开发者选项,生成一个 api key ,然后把文档看一遍
    airbotgo
        7
    airbotgo  
    OP
       Jun 2, 2023
    进展及方法尝试反馈:

    gist.github.com 创建私密 gist ;
    直接将该 gist 链接添加到客户端托管列表,提示某行字符错误(可能用了很多表情符号);
    点击该页面的「 raw 」按钮,会打开一个新的页面,将该页面链接添加客户端,成功。

    短时间内没有出现 404 错误,已经够用了。

    感谢楼上大佬们的回复。

    不过仍然对提问中带 token 的页面,时不时 404 不是很理解(有时候又可以访问),有大佬知道吗?
    ljsh093
        8
    ljsh093  
       Jun 2, 2023
    @baobao1270 #5 有完整 url 就行,我随便找了个客户端能 get 到
    kaneg
        9
    kaneg  
       Jun 2, 2023 via iPhone
    那个带 token 的 url 是有有效期限制的,大概是一个星期左右,过了有效期就需要重新访问页面生成一个新的链接
    kaneg
        10
    kaneg  
       Jun 2, 2023 via iPhone
    至于为什么会带 token ,是因为你的仓库是私密仓库,防止别人直接访问到。如果别人偶尔拿到那个带 token 的 url ,他也只能用一段时间
    airbotgo
        11
    airbotgo  
    OP
       Jun 2, 2023
    @kaneg 感觉有效期 1 分钟都不到,甚至只有几秒钟就失效。
    我是链接扔到不同的浏览器隐私窗口打开,能打开的,刷新一下就 404 ;有些根本就一直打不开。不知道原因何在。
    GlobalNPC
        12
    GlobalNPC  
       Jun 2, 2023
    Clash 的请求能带 headers 吗? 如果可以的话,可以试试 S3 设置 CORS ( Cloudflare 的 R2 也可以)
    ysc3839
        13
    ysc3839  
       Jun 2, 2023 via Android
    不如弄个私有仓库,里面再弄 GitHub Pages
    SenLief
        14
    SenLief  
       Jun 2, 2023 via iPhone
    额,gist 需要处理一下链接就不会变化了,一直都可以获取最新的内容。
    就是点下 raw ,然后把链接中的 raw/xxxxxxx/文件名,把 xxxxxx 那部分删掉访问就可以了。
    mingl0280
        15
    mingl0280  
       Jun 2, 2023 via Android
    你自己在服务器上开个带鉴权的 fastapi 服务,提供 yaml 内容就行了……
    palemoky
        16
    palemoky  
       Jun 2, 2023
    这个很简单,直接搞个私密 gist 即可,然后用以下链接即可,注意链接不能泄露。
    用这个链接 gist 的文件名修改也不会影响内容加载,有个问题是 GitHub 受到干扰时可能打不开链接,所以首次加载 Clash 配置会陷入死循环。
    https://gist.githubusercontent.com/<username>/<gist_id>/raw
    Shorekeeper
        17
    Shorekeeper  
       Jun 2, 2023
    Secret Gist 是仅限链接访问,点击 raw 获取链接,加个 ghproxy 可以墙内访问。
    unfrost
        18
    unfrost  
       Jun 2, 2023
    会 docker 的话,docker 跑一个 nacos 最方便了,就一句命令的事情,然后在里面加 yaml 配置,还可以查历史的修改记录之类的。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3139 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 57ms · UTC 11:11 · PVG 19:11 · LAX 04:11 · JFK 07:11
    ♥ Do have faith in what you're doing.