Tech、Food & Life

  • 首页
  • 软件下载
    • 电脑和软件
    • Mac软件
    • windows软件
  • Telegram电报
  • 网站资源推荐
  • 海外流媒体
    • netflix
    • Youtube
    • Disney+
    • HBO
  • 生活日常
    • COVID19疫情相关
    • 德国驾照和车
    • 电脑和软件
    • 花花草草
  • 烘焙
  • 关于我
Tech Food & Life
爱技术,爱美食,爱生活
  1. 首页
  2. 生活日常
  3. 电脑和软件
  4. 正文

Surgio简易教程

2022年8月28日 2335点热度 0人点赞 0条评论

<aside> 💡 Surgio,一款高度自定义各类App策略组的托管工具,例如比较热门的Surge、QuantumultX、Clash等,您甚至可以使Surge自动同步远程Rewrite、Hostname部分。

</aside>

  • 项目地址https://github.com/geekdada/surgio,首先感谢作者geekdada。
  • 本教程由sjh完成,观看教程需具备一定的汉语能力,您只需要一字不差照搬,无需VPS即可部署
  • [ ] 如有疑问可留言至Telegram频道https://t.me/cloudtest
  • [ ] Surgio交流群:https://t.me/surgiotg

  • 演示地址:

    https://demo-beta.now.sh

    accessToken:YOUR_PASSWORD

👆最终效果展示

👆最终效果展示

教程macOS/Windows通用,废话不多说,下面进入正题。


  • 1、准备本地环境
    • 1⃣️ 安装node.js

      下载地址:https://nodejs.org/zh-cn/download/

      选择长期支持版LTS

      强烈建议选择LTS版,最新版后续会报错

      强烈建议选择LTS版,最新版后续会报错

    • 2⃣️ 准备一个现代化的编辑器

      本教程使用VSCode

      创建一个文件夹备用,名字请便,

      此处为命名为demo

      文件夹任意目录,无特定要求

      文件夹任意目录,无特定要求

      DEMO为新创建的目录

      DEMO为新创建的目录


  • 2、安装surgio本体
    • 1⃣️ 使用命令安装Surgio

      在上一步创建的文件夹demo中启动终端,以下命令二选一

      # 安装
      npm init surgio-store my-rule-store
      
      # 使用国内镜像安装
      npm init surgio-store my-rule-store --use-cnpm
      

      此处提示是否配置将配置文件上传至阿里云 OSS,选择否

      部署失败请使用国内镜像或代理终端

      部署失败请使用国内镜像或代理终端

    至此Surgio本地版已经完成


  • 3 、测试Surgio在本地生成Surge/QuantumultX/Clash完整配置(非必要,可略过)
    • 1⃣️ 使用命令生成完整配置

      在上一步创建的my-rule-store目录输入以下命令,即可生成完整策略组配置

      # 生成规则(Surge/Quantumult/X/Clash)
      
      npx surgio generate
      

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/d7bc401b-957c-49ff-afe7-8ae45f3a59a1/2020-03-0912.02.46.png

    • 2⃣️ 查看已生成的配置

      已生成完整策略组配置,可在**my-rule-store/dist/**目录下查看

      此处即为Surge/Quantumult(X)/Clash完整策略组配置

      此处即为Surge/Quantumult(X)/Clash完整策略组配置

    测试完成,选取对应App配置后可见熟悉的配置文件。


  • 4、安装策略组托管API组件(⚠️核心步骤)
    • 1⃣️ 修改/my-rule-store/surgio.conf.js

      复制下面这段到136行,添加accessToken,注意修改引号‘’里面的内容,俗称改密码

      // 接口鉴权
      gateway: {
          auth: true,
          accessToken: 'YOUR_PASSWORD',
        },
      

      为防止订阅信息在公网泄露,强烈建议设置密码

      为防止订阅信息在公网泄露,强烈建议设置密码

    • 2⃣️ 修改/my-rule-store/package.json

      ⚠️新建文件后缀为.json,不是.js

      ⚠️如果你不想花费数小时修正后续错误,此步骤请严格按照示例操作

      第9行起,添加以下内容,别忘了加上英文逗号,

      ,
          "@surgio/gateway": "^0.7.0"
        },
        "engines": {
          "node": "10.x"
        }
      }
      

      请仔细对比示例

      请仔细对比示例

    • 3⃣️ /my-rule-store/目录下新建now.json

      ⚠️新建文件后缀为.json,不是.js

      输入以下内容

      {
          "version": 2,
          "public": false,
          "builds": [
            { 
              "src": "/gateway.js",
              "use": "@now/node",
              "config": {
                "includeFiles": [
                  "provider/**",
                  "template/**",
                  "*.js",
                  "*.json"
                ]
              }
            }
          ],
          "routes": [
            {
              "src": "/(.*)",
              "dest": "/gateway.js"
            }
          ]
        }
      

      关键步骤,请仔细对比示例

      关键步骤,请仔细对比示例

    • 4⃣️ /my-rule-store/目录下新建gateway.js

      ⚠️新建文件后缀为.js,不是.json

      输入以下内容

      'use strict';
      
      const gateway = require('@surgio/gateway');
      
      module.exports = gateway.createHttpServer();
      

      关键步骤,请仔细对比示例

      关键步骤,请仔细对比示例

    • 5⃣️ /my-rule-store/目录下打开终端

      运行以下命令

      npm i @surgio/gateway --save
      

      关键步骤,请仔细对比示例

      关键步骤,请仔细对比示例

    至此API组件部署完成,接下来将本地仓库推送到GitHub并且关联now.sh网关即可


  • 5、将Surgio本体推送至GitHub仓库
    • 1⃣️ 新建一个空仓库

      选择私有,注意不要勾选初始化仓库

      ⚠️当然你也可以选择公仓,机场主不封你号问题就不大。

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/8054345b-5d52-4f1d-9364-df90488bc0fc/2020-03-0912.44.50.png

      复制新建仓库的这条命令备用

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1d12c0c6-f893-41a6-92d6-588396e114c9/2020-03-0910.42.34.png

    • 2⃣️ 本地项目Surgio推送GitHub仓库

      /my-rule-store/目录下新建名为.gitignore的文件,输入内容,如文件已存在则替换全部内容

      .env
      node_modules
      dist
      .DS_Store
      

      关键步骤,请仔细对比示例

      关键步骤,请仔细对比示例

      以上步骤完成后保存文件,接下来连接远程仓库,依次在/my-rule-store/目录输入以下命令,注意,你不要把汉字也输进去,过程会提示输入你的GitHub账户邮箱及密码

      # 初始化仓库
      git init
      
      # 配置user.name(如已配置,请忽略)
      git config --global user.name "你的GitHub用户名"
      
      # 配置user.email(如已配置,请忽略)
      git config --global user.email "你的GitHub账户邮箱"
      
      # 连接GitHub仓库,此命令每个仓库不相同,你需要在你的仓库里找到,参考上一步
      git remote add origin <https://github.com/oss-net/demo.git>
      
      

      ⚠️未安装Git此处会报错,可通过以下地址安装

      https://git-scm.com/download

      ⚠️收到反馈此处会提示“fatal: remote origin already exists.”,无视即可,接着进行下一步。

      远程仓库连接成功

      远程仓库连接成功

      本地项目推送GitHub仓库

      点击带数字的蓝色圈,再点击右边的+,暂存更改

      暂存更改完成

      暂存更改完成

      这里随便输几个字,点击右上角的✓,提交

      提交完成

      提交完成

      接下来推送到仓库,点击上图✓旁边的...,选择推送,过程可能会提示输入你的GitHub账户邮箱及密码,没有上游分支,确定发布

      推送完成

      推送完成

      查看仓库

      查看仓库

    至此你的Surgio已推送到GitHub仓库,接下来需要关联now.sh网关


  • 6、now.sh关联GitHub仓库
    • 1⃣️ 登陆Zeit

      登陆地址:https://zeit.co/

      使用你的GitHub登陆即可

      步骤过于简单,这里不演示

      步骤过于简单,这里不演示

    • 2⃣️ 关联GitHub项目

      点击Import Project

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/8c617369-7419-4a02-855e-65f8750009d8/2020-03-091.19.12.png

      选择From Git Repository,点击Continue

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/37a09631-f892-4783-92e1-5e2c943991b1/2020-03-091.24.24.png

      点击Import Project From GitHub,从你的GitHub仓库选择关联

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4809a591-1c3c-4737-bb62-9ca0541bff2f/2020-03-091.27.00.png

      名字、路径默认即可,无需修改

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/5e22b70e-9b68-4d10-bcca-c7a93c2c3422/2020-03-091.29.13.png

      项目关联成功

      项目关联成功

    • 3⃣️ 保存API地址

      这几条连接即为你的Surgio面板访问连接,保存备用

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/9a4d946b-2389-4e25-a132-8eb45e1daee1/2020-03-091.32.33.png

      复制到浏览器打开,并且输入token,即可成功访问

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/e2754087-991d-4b34-b498-8a53834407fc/2020-03-091.38.53.png

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/02f6b362-2045-47bd-8b80-428f89423d50/2020-03-091.40.04.png

      至此你的Surgio已经全部完成

    • 4⃣️ 同步托管地址

      修改/my-rule-store/surgio.conf.js,第123行

      urlBase: '[<https://example.com/>](<https://example.com/>)',
      # 替换为你的API地址,必须以/结尾
      
      urlBase: '<https://demo-beta.now.sh/get-artifact/>',
      

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/642034e6-8e78-4b7e-924d-f014a3539088/2020-03-095.55.03.png

      修改完成后提交推送,这里不再敖述


  • 7、使用Surgio网关API
    • 1⃣️ 登陆面板

      浏览器输入:https://demo-beta.now.sh/

      输入accessToken

      https://s3-us-west-2.amazonaws.com/secure.notion-static.com/bce927ba-5c04-402e-a41e-d2021191927f/2020-03-091.59.28.png

未完待续

Copy of Surgio简易教程

Surgio简易教程

标签: 暂无
最后更新:2022年8月11日

sunqi.org

这个人很懒,什么都没留下

点赞
< 上一篇
下一篇 >

文章评论

razz evil exclaim smile redface biggrin eek confused idea lol mad twisted rolleyes wink cool arrow neutral cry mrgreen drooling persevering
取消回复

COPYRIGHT © 2020-2025 SUNQI.ORG ALL RIGHTS RESERVED. 本站部分资源来源于网络,如有侵权请联系删除,谢谢。

Theme Kratos Made By Seaton Jiang