راهنمای کامل راهاندازی پروژه روی Vercel
1) پیشنیازها
قبل از شروع، این موارد را داشته باشید:
- اکانت Vercel
gitpythonوpipnpm(برای نصب Vercel CLI)
برای نصب npm، بهترین مسیر نصب Node.js است:
- صفحه رسمی دانلود Node.js: https://nodejs.org/en/download
بعد از نصب، بررسی کنید:
2) دریافت پروژه
پروژه را clone کنید (یا ZIP دانلود کنید):
git clone https://github.com/block-p/vercelmasterhttp.git
cd vercelmasterhttp3) نصب Vercel CLI
اگر به رجیستری اصلی دسترسی ندارید:
npm i -g vercel --registry="https://mirror-npm.runflare.com"4) لاگین و دیپلوی روی Vercel
وارد فولدر vercel شوید. ترتیب درست دستورات:
- اول لاگین:
- داخل ریشه پروژه، یک deploy اولیه بزنید تا پروژه link شود:
این دستور معمولا Preview Deploy میسازد.
- برای Production Deploy:
5) تنظیم متغیر محیطی AUTH_KEY در Vercel
در داشبورد Vercel:
Project -> Settings -> Environment Variables -> Add
مقدارها:
Key:AUTH_KEYValue: یک کلید امن دلخواه (همین را بعدا درconfig.jsonهم میگذارید)
بعد از ذخیره، حتما Redeploy کنید (یا دوباره vercel --prod بزنید).
6) نکته مهم امنیتی Vercel
اگر Deployment Protection/Authentication روشن باشد، پروکسی به جای JSON صفحه HTML میگیرد و خطای Bad JSON میدهد.
در صورت نیاز:
Project -> Settings -> Deployment Protection- دسترسی/احراز هویت را برای دامنهای که استفاده میکنید خاموش کنید.
7) نصب وابستگیهای پایتون
پیشنهاد: ابتدا virtualenv بسازید.
python -m venv .venv
source .venv/bin/activateسپس:
pip install -r requirements.txt
اگر نیاز به mirror داخلی دارید:
pip install -r requirements.txt -i https://mirror-pypi.runflare.com/simple/
8) ساخت فایل تنظیمات
cp config.example.json config.json
نمونه پیشنهادی:
{
"mode": "vercel_edge",
"front_domain": "YOUR_PROJECT.vercel.app",
"front_ip": "",
"worker_host": "YOUR_PROJECT.vercel.app",
"relay_path": "/api/api",
"auth_key": "SAME_VALUE_AS_VERCEL_AUTH_KEY",
"enable_batch": false,
"enable_h2": false,
"listen_host": "127.0.0.1",
"listen_port": 8085,
"log_level": "INFO",
"verify_ssl": true,
"hosts": {}
}توضیح فیلدهای مهم:
worker_host: در صفحهOverviewپروژه Vercel، بخشDomains(بدونhttps://)auth_key: باید دقیقا برابرAUTH_KEYدر Vercel باشدfront_domain: برای شروع بهتر است همانworker_hostباشدfront_ip: معمولا خالی بگذاریدrelay_path: چون فایل شماapi/api.jsاست باید/api/apiباشد
9) اجرای پروژه
در اولین اجرا، در پوشه ca/ گواهی ساخته میشود.
10) نصب گواهی CA (برای HTTPS ضروری است)
macOS
- فایل
ca/ca.crtرا باز کنید (Keychain Access). - روی گواهی دوبار کلیک کنید.
- بخش
Trustرا باز کنید. - گزینه
When using this certificateرا رویAlways Trustبگذارید. - مرورگر را کامل ببندید و دوباره باز کنید.
Windows
- روی
ca/ca.crtدوبار کلیک کنید. Install Certificate- Store:
Trusted Root Certification Authorities - مرورگر را کامل ریاستارت کنید.
Linux (Ubuntu/Debian)
sudo cp ca/ca.crt /usr/local/share/ca-certificates/masterhttp-relay.crt sudo update-ca-certificates
بعد مرورگر را ریاستارت کنید.
Firefox (همه سیستمعاملها)
Firefox معمولا CA سیستم را کامل استفاده نمیکند. باید دستی import کنید:
Settings -> Privacy & Security -> Certificates -> View Certificates- تب
Authorities->Import - فایل
ca/ca.crt - گزینه
Trust this CA to identify websitesرا فعال کنید.
11) استفاده از پروکسی
بعد از اجرا، پروکسی HTTP روی 127.0.0.1:8085 بالا میآید.
در مرورگر/سیستم:
- Proxy Host:
127.0.0.1 - Proxy Port:
8085 - Type:
HTTP
12) تست سریع سلامت
تست endpoint روی Vercel:
curl -sS "https://YOUR_PROJECT.vercel.app/api/api" \ -H "content-type: application/json" \ --data '{"k":"YOUR_AUTH_KEY","m":"GET","u":"https://example.com","h":{},"r":true}'
اگر خروجی شامل s, h, b بود، relay درست کار میکند.
تمام.
DONATE
usdt (trc20) TL9y6ejgFPgL8w1SyHuXCZbDrnUW4SXbEu
TON UQC7PDo_Lw7a0R26KA9DMeTd5c1XY6NIDIpqzckfi326RROO