V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
coderpwh
V2EX  ›  分享创造

cf 中转麻烦?我用 deno 写了个万能中转代理,一键部署,无需域名

  •  
  •   coderpwh ·
    pwh-pwh · 37 天前 · 3383 次点击
    这是一个创建于 37 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前几天接触了 deno,发现挺不错的,刚好有几个 api 需要代理中转就写了这个小工具

    用途:用于国内访问慢或者无法访问的服务的中转,如 opengpt,gemini,一些虚拟币 api 接口等等

    优点:可以动态设置需要代理网站的地址,使用简单,无门槛

    项目地址: https://github.com/pwh-pwh/DenoProxy

    具体说明如下:

    🌐 Deno Proxy

    欢迎使用 Deno Proxy!🚀
    这是一个轻量级的代理服务应用,使用 Deno 构建,旨在将请求转发到指定的目标 URL 。无论您需要通过代理访问网站,还是转发 API 请求,Deno Proxy 都能满足您的需求!

    📦 特性

    • 代理请求: 将以 /proxy 开头的请求转发到指定的目标 URL 。
    • 设置代理 URL: 使用简单的 ?setUrl=TARGET_URL 查询参数轻松设置或更改代理目标 URL 。
    • 动态代理目标: 使用 /proxy 端点设置活动的代理目标。

    🚀 快速开始

    1. 克隆项目

    通过以下命令克隆仓库并进入项目目录:

    git clone https://github.com/pwh-pwh/DenoProxy.git
    cd deno-proxy
    

    2. 运行代理服务器

    确保已安装 Deno。如果没有安装,可以从 deno.land 获取并安装。
    然后,使用以下命令运行代理服务器:

    deno run --allow-net --unstable proxy.ts
    

    此命令会启动代理服务器并监听 8000 端口。

    3. 部署应用

    有两种方式实现部署

    1. 安装 deno 部署工具 deployctl deno install -A jsr:@deno/deployctl --global 项目目录执行 deployctl deploy
    2. fork 本项目,进入 deno 控制台 https://dash.deno.com/ 进行部署操作

    4. 使用代理服务器

    🌍 设置代理 URL

    要设置代理目标,您需要将有效的 URL 传递给 setUrl 参数:

    http://localhost:8000/?setUrl=https://example.com
    

    🔄 使用代理

    设置代理后,只需访问任何以 /proxy 开头的路径,请求将会转发到指定的目标 URL 。

    例如:

    http://localhost:8000/proxy/some/path
    

    此请求将会被转发到 https://example.com/some/path,并返回目标网站的响应!

    📚 API 参考

    1. ?setUrl=TARGET_URL

    使用此端点来设置或更改代理目标 URL 。所有访问 /proxy 的请求都会转发到此 URL 。

    示例

    http://localhost:8000/?setUrl=https://example.com
    

    2. /proxy 路径

    访问以 /proxy 开头的路径的请求将会转发到设置的目标 URL 。

    示例

    http://localhost:8000/proxy/some/path
    

    这将会把请求转发到目标 URL ,并返回响应。

    📁 项目结构

    deno-proxy/
    ├── main.ts          # 代理服务器代码
    ├── README.md         # 这份超棒的文档!
    └── ...
    

    🛠️ 使用的技术

    • Deno: 一个用于 JavaScript 和 TypeScript 的安全运行时。
    • HTTP 服务器: Deno 的原生 HTTP 服务器处理请求。

    🔑 权限

    服务器需要以下权限:

    • --allow-net: 允许网络访问(用于转发请求)。
    • --unstable: 启用不稳定的 Deno API (用于使用 Deno.openKv())。

    🤝 贡献

    欢迎随时 fork 本仓库、提交问题或 Pull Request 。您的贡献是我们不断改进的动力!

    📜 许可证

    本项目使用 MIT 许可证 进行授权。


    🖼️ 预览

    一旦您运行了服务器,下面是如何操作的预览:

    1. 设置代理 URL

      在浏览器中输入以下 URL 来设置目标 URL:

      Set Proxy URL

    2. 使用代理

      然后,简单地调用 /proxy 端点:

      Proxy Request

    16 条回复    2025-03-09 23:35:00 +08:00
    ob
        1
    ob  
       37 天前 via Android
    代理用的是哪个节点?好像没看到配置?
    yangg
        2
    yangg  
       37 天前
    deno.dev 终于要被搞死了
    coderpwh
        3
    coderpwh  
    OP
       37 天前
    @ob deno 提供的服务,具体没查
    euronx
        4
    euronx  
       37 天前
    vercel deno-deploy 应该都是禁止反代的
    Puteulanus
        5
    Puteulanus  
       37 天前
    deno 好像很早以前就发过公告禁止这类的
    Chism
        6
    Chism  
       37 天前 via iPhone
    我还以为可以 v2less
    docx
        7
    docx  
       36 天前 via iPhone
    谨慎部署,会封号的
    UnluckyNinja
        8
    UnluckyNinja  
       36 天前
    搜了下,确实不让
    https://docs.deno.com/deploy/manual/acceptable-use-policy/
    Not Acceptable Use

    ❌ Crypto mining
    ❌ Highly CPU-intensive load (e.g. machine learning)
    ❌ Media hosting for external sites
    ❌ Scrapers
    ❌ Forward proxy
    ❌ VPN
    macro233
        9
    macro233  
       36 天前
    我已经被封了。。。
    R4rvZ6agNVWr56V0
        10
    R4rvZ6agNVWr56V0  
       36 天前
    deno
    R4rvZ6agNVWr56V0
        11
    R4rvZ6agNVWr56V0  
       36 天前
    要被墙了
    TanKuku
        12
    TanKuku  
       36 天前
    哪有什么破坏大环境的人
    c398425861
        13
    c398425861  
       21 天前
    删了吧,迟早被墙
    c398425861
        14
    c398425861  
       21 天前
    电信 的 google 线路绕美了,是不是滥用的多
    Francklin
        15
    Francklin  
       13 天前
    推荐一个万能代理服务 webfox(fox.alnk.cn),自己偷偷用,不要大力宣传就好
    Francklin
        16
    Francklin  
       13 天前
    此方式只能处理很简单的网站。而 webfox 比较完整的处理了各种问题,还能针对性的配置,但也只能达到原始网站的 70%-95%
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2444 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 04:23 · PVG 12:23 · LAX 21:23 · JFK 00:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.