simpleProxy 是一个基于 Node.js 的轻量级反向代理工具。 它支持代理 文档、音视频、图片、文本等内容,并且可以用于解决 CORS(跨域资源共享)问题。
主要功能:
- 🔄 反向代理多种资源类型(文档、音视频、图片、文本等)
- 🛡️ 支持域名黑名单,限制访问指定域名及其子域名
- 🔑 支持秘钥配置,增强安全性
- ⚡ 实时监听配置文件变化(无需重启即可生效,端口除外)
确保已安装 Node.js 和 npm/cnpm:
node -v # 查看 Node.js 版本
npm -v # 查看 npm 版本
在项目目录下执行:
npm install # 或者 cnpm install
为核心文件添加可读权限:
chmod +x index.js
chmod +x config.json
node index.js
# 或者
npm start / cnpm start
- 默认运行端口为 8082
- 如果该端口被占用,项目将无法正常运行
如果直接关闭终端,项目会停止运行。为了保持后台运行,可以使用 screen 工具。
sudo apt update
sudo apt install screen
screen -S proxy # 创建名为 proxy 的会话
cd ~/proxy && node index.js # 进入会话并运行项目
- 退出会话但保持运行:
Ctrl + A + D - 查看会话列表:
screen -ls - 重新进入会话:
screen -r proxy
配置文件:config.json 项目使用 chokidar 模块实时监听文件变化,修改配置后(除端口外)无需重启即可生效。
{
"port": 8082,
"secret": "your-secret-key",
"blacklist": ["example.com", "sub.example.com"]
}
- port:项目运行端口号(修改需重启)
- secret:秘钥内容,用于安全校验
- blacklist:域名黑名单,禁止访问该域名及其子域名
http://127.0.0.1:8082/?url=代理目标URL
👉 建议对代理的 URL 进行 URL 编码:
encodeURIComponent('代理URL')
示例:
http://127.0.0.1:8082/?url=https%3A%2F%2Fexample.com%2Fapi%2Fdata