type
status
date
slug
summary
tags
category
icon
password
上次编辑时间
May 15, 2024 04:49 AM
创建时间
Apr 24, 2024 08:04 AM
参考链接

如何搭建一个简单的网站代理服务

在网络世界中,搭建一个简单的网站代理服务是一个常见的需求。无论是为了加速访问速度,绕过地域限制,还是实现访问控制,都可以通过搭建自己的代理服务器来实现。本文将介绍三种不同的部署方式:使用 Cloudflare Workers、在 VPS 或云服务器上部署以及使用 Docker 部署。

准备工作

在开始之前,你需要准备以下工具和资源:
  • 一台国外 VPS
  • 一个域名 (例如 example.com),并托管到 Cloudflare 或其他服务商
  • 将 VPS 的 IP 解析到你的域名 (例如 siteproxy.example.com)

注意

由于下面三种方式我使用的都是同一个域名:siteproxy.example.com,因此不能同时使用这个域名,如需同时尝试,需要更换为不同的域名即可。
 

部署到 Cloudflare Workers

  1. 准备工作
      • 假设你的域名已经管理在 Cloudflare 名下。
      • 下载或者克隆本项目
        • 编辑 build/worker.js 文件。
        • http://localhost:5006 替换为你的代理服务器的域名,如 https://siteproxy.example.com。
        • user22334455 修改为你自己设置的密码,我这里修改为 ivwv
    1. 部署步骤
        • 创建一个 Cloudflare Worker,并编辑该 Worker,将编辑过的 worker.js 内容粘贴进去,保存并部署。
        • 在 Cloudflare 控制台的 Workers & Pages 页面中,打开刚才保存的 Worker,点击顶部的 '触发器',然后 '添加自定义域',设置为你的代理域名(例如:siteproxy.example.com)。
    1. 使用方式
        • 现在可以直接访问 https://siteproxy.example.com/ivwv/,确保斜杠不要遗漏。

    部署到 VPS 或云服务器

    1. 配置 SSL 升级为 https 协议
        • 使用 Certbot Nginx 配置 SSL 网站,或使用 Caddy,确保将域名指向本地的 5006 端口。
    1. 安装 Node.js
        • 安装 Node.js 的版本需要是 21 或以上。
    1. 部署步骤
        • 克隆本项目到服务器,并进入项目目录。
        • 测试是否能运行:node bundle.js,如果没有错误,按 Ctrl+C 结束程序。
        • 打开并修改 config.json 文件,设置代理服务器的相关信息。
    1. 启动服务
        • 安装 pm2:npm install -g pm2
        • 执行 pm2 start bundle.js 启动服务。
    1. 使用方式
        • 现在可以在浏览器中访问你的域名,网址为 proxy_url 加上 token_prefix

    Docker 部署

    1. 准备工作
        • 配置域名对应的 SSL 证书和 Nginx,指向本地 5006 端口。
    1. 部署步骤
        • 克隆本项目到服务器,并进入项目目录。
        • 打开并修改 config.json 文件,设置代理服务器的相关信息。
    1. 启动服务
        • 进入 Docker Node 子目录,执行 sudo docker compose up 启动 Docker 容器。
    1. 使用方式
        • 现在可以直接访问 https://your-proxy-domain.name/user-your-password/
    通过以上步骤,你可以轻松搭建自己的网站代理服务,实现更多个性化需求。