通过 Cloudflare Workers 实现简单的 IP 轮换与 URL 重定向
FlareProx 可自动在 Cloudflare Workers 上部署 HTTP 代理端点,方便地将所有流量重定向到您指定的任何 URL。它支持所有 HTTP 方法(GET、POST、PUT、DELETE 等),并通过 Cloudflare 的全球网络提供 IP 掩蔽。每天 10 万次请求免费!
FlareProx 部署充当 HTTP 代理的 Cloudflare Workers。当您发出请求时:



git clone <repository-url>
cd flareprox
pip install -r requirements.txt
运行 python3 flareprox.py config 或直接编辑项目目录中的 flareprox.json:
{
"cloudflare": {
"api_token": "your_cloudflare_api_token",
"account_id": "your_cloudflare_account_id"
}
}
# Create 2 proxy endpoints
python3 flareprox.py create --count 2
# View deployed endpoints
python3 flareprox.py list
# Test all endpoints are functioning
python3 flareprox.py test
# Example per HTTP Method
# GET request
curl "https://your-worker.account.workers.dev?url=https://httpbin.org/get"
# POST request with data
curl -X POST -d "username=admin" "https://your-worker.account.workers.dev?url=https://httpbin.org/post"
# PUT request with JSON
curl -X PUT -d '{"username":"admin"}' -H "Content-Type: application/json" \
"https://your-worker.account.workers.dev?url=https://httpbin.org/put"
# DELETE request
curl -X DELETE "https://your-worker.account.workers.dev?url=https://httpbin.org/delete"
每个已部署的 FlareProx 端点支持两种请求格式:
# Query parameter
curl "https://your-worker.account.workers.dev?url=https://httpbin.org/ip"
# Custom header
curl -H "X-Target-URL: https://httpbin.org/ip" https://your-worker.account.workers.dev
# Delete all proxy endpoints
python3 flareprox.py cleanup
FlareProx 可以直接导入并在您的 Python 应用程序中使用。以下是如何发送 POST 请求的示例:
#!/usr/bin/env python3
from flareprox import FlareProx, FlareProxError
import json
# Initialize FlareProx
flareprox = FlareProx(config_file="flareprox.json")
# Check if configured
if not flareprox.is_configured:
print("FlareProx not configured. Run: python3 flareprox.py config")
exit(1)
# Create some endpoints if none exist
endpoints = flareprox.sync_endpoints()
if not endpoints:
print("Creating proxy endpoints...")
flareprox.create_proxies(count=2)
# Make a POST request through FlareProx
try:
# Prepare POST data
post_data = json.dumps({
"username": "testuser",
"message": "Hello from FlareProx!",
"timestamp": "2025-01-01T12:00:00Z"
})
headers = {
"Content-Type": "application/json",
"User-Agent": "FlareProx-Client/1.0"
}
# Send POST request via random FlareProx endpoint
response = flareprox.redirect_request(
target_url="https://httpbin.org/post",
method="POST",
headers=headers,
data=post_data
)
if response.status_code == 200:
result = response.json()
print(f"✓ POST successful via FlareProx")
print(f"Origin IP: {result.get('origin', 'unknown')}")
print(f"Posted data: {result.get('json', {})}")
else:
print(f"Request failed with status: {response.status_code}")
except FlareProxError as e:
print(f"FlareProx error: {e}")
except Exception as e:
print(f"Request error: {e}")
FlareProx 旨在用于合法的开发、测试和研究目的。用户有责任确保其使用符合适用法律和服务条款。作者不对滥用此工具承担任何责任。