https://github.com/ethanz-code/cloudflare-workers-proxy
在 Cloudflare Workers 上部署的边缘化反代服务,通常用于处理 CORS, 科学上网, 伪装来源,内容审查等。
https://github.com/ethanz-code/cloudflare-workers-proxy
Last synced: 9 months ago
JSON representation
在 Cloudflare Workers 上部署的边缘化反代服务,通常用于处理 CORS, 科学上网, 伪装来源,内容审查等。
- Host: GitHub
- URL: https://github.com/ethanz-code/cloudflare-workers-proxy
- Owner: ethanz-code
- License: apache-2.0
- Created: 2025-06-03T01:22:47.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-06-23T11:15:46.000Z (9 months ago)
- Last Synced: 2025-06-24T12:53:12.810Z (9 months ago)
- Language: TypeScript
- Homepage:
- Size: 64.5 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cloudflare Workers 代理服务
这是一个基于 Cloudflare Workers 的边缘代理服务,目前主要提供 CORS 跨域请求处理功能。
## 功能特性
### 已实现功能
- 🔄 CORS 跨域请求处理
- 🌍 默认代理功能(支持部分网站代理,自动转发并重写资源链接)
### 开发计划
- 🌐 科学上网代理
- 🎭 请求头伪装
- 🛡️ 内容审查和过滤
- 📊 请求统计和监控
- 🔒 安全特性增强
- 🚀 性能优化
## 技术栈
- ⚡ Cloudflare Workers(无服务器边缘计算)
- 🚀 Hono.js(Web 框架,支持 SSR)
- 🛡️ TypeScript(类型安全)
- 🛠️ Vite(开发与构建工具)
- 🔧 Wrangler(开发与部署工具)
- 🥖 Bun(包管理与运行环境)
## 快速开始
### 前置要求
- 📦 Node.js 18+ 或 [Bun](https://bun.sh/)
- ☁️ Cloudflare 账号
- 🔧 Wrangler CLI
### 安装
```bash
# 使用 bun 安装依赖
bun install
# 或使用 npm 安装依赖
npm install
```
### 开发
```bash
# 本地开发
bun run dev
# 或
npm run dev
```
### 部署
```bash
# 部署到 Cloudflare Workers
bun run deploy
# 或
npm run deploy
```
### 类型生成
```bash
# 生成 Cloudflare Workers 类型定义
bun run cf-typegen
# 或
npm run cf-typegen
```
## 配置说明
### Wrangler 配置
项目使用 `wrangler.jsonc` 进行配置,主要配置项包括:
- `name`: Worker 名称
- `main`: 入口文件
- `compatibility_date`: 兼容性日期
- `observability`: 可观测性配置
## 注意事项
1. ⚠️ 请确保遵守 Cloudflare Workers 的使用限制和条款
2. 🔒 建议在生产环境中配置适当的安全措施
3. 🗝️ 注意处理敏感信息和 API 密钥
## 许可证
本项目采用 MIT 许可证。详细信息请参阅 LICENSE 文件。
感谢您的使用!如果您对这个项目有任何改进或建议,也欢迎贡献代码或提出问题。
## 默认代理功能说明
本服务支持将部分网站的内容通过本地代理访问,自动处理跨域和资源重写。
### 使用方法
只需访问如下格式的地址:
```
/proxy?url=<目标网站地址>
```
例如:
```
/proxy?url=https://tool.oschina.net/apidocs/apidoc?api=jdk-zh
```
如需对 HTML 内容中的资源链接进行重写(确保后续资源也通过代理加载),可加上 `rewrite=1` 参数:
```
/proxy?url=https://tool.oschina.net/apidocs/apidoc?api=jdk-zh&rewrite=1
```
所有被重写的资源链接也会自动带上 `rewrite=1`,保证代理链路一致。
> 注意:仅支持部分公开网站,部分受限或需登录的网站可能无法正常代理。