احتمالاً میدونید که دو روش استفاده Worker و Pages برای ساخت پروکسی روی کلادفلر مورد استفاده قرار میگیره، نکته جالب توجه اینه که روش Worker که مرسومتره یه محدودیت داره که روزانه اجازه ارسال بیشتر از صدهزار Request به شما نمیده. البته این محدودیت برای مصرف ۲-۳ نفر کافیه . برای دور زدن این محدودیت در روش worker یه دامنه به ورکر وصل میکردیم و اینجوری نامحدود میشد (که ظاهرا باگ کلادفلر هست). اما Pages این محدودیت رو نداره (اخیرا بعضی موارد گزارش شده که این روش هم محدودیت خواهد داشت، خودتون تست کنید). البته چون ما در این روش از امکانی به اسم Pages functions استفاده میکنیم کماکان مشابه Worker شما ایمیلی دریافت خواهید کرد که پر شدن ظرفیت مصرف 100k رو به شما اطلاع میده، در این روش حتی اگر از دامنه شخصی هم استفاده کنید باز این ایمیل رو دریافت می کنید. ولی در نهایت تجربه نشون داده که سرویس شما قطع نخواهد شد.
مزیت مهم دیگهش سهولت در یروزرسانی هست. وقتی کد پروژه به روز بشه شما هم به راحتی و بدون نیاز به طی مجدد مراحل میتونید پنلتون رو به روزرسانی کنید. توضیحات بیشتر در بخش بروزرسانی اومده.
ضمنا مراحل استفاده از Pages بسیار سادهتر است و به راحتی روی گوشی موبایلتون میتونید این کارها رو انجام بدید.
در سایت Github یه اکانت میسازید ( برای ثبت نام فقط یک ایمیل لازم دارید، توصیه میکنم از ایمیلهای Fake یا موقت استفاده نکنید). با مشخصات کاربریتون در گیتهاب لاگین میکنید.
حالا به آدرس گیتهاب BPB-Worker-Panel میرید و از اون بالا دکمهی Fork رو میزنید.
تو صفحهی بعدی به هیچی دست نزنید و Create Fork رو بزنید. خب کار ما با گیتهاب تموم شد.
اگر اکانت کلود فلر ندارید از اینجا یک اکانت بسازید (اینجا هم فقط یک ایمیل برای ثبت نام لازم دارید).
حالا در اکانت کلادفلرتون از منوی سمت چپ وارد قسمت Workers and Pages
بشید (همونجا که ورکر میساختیم) و Create Application
رو بزنید. با این تفاوت این دفعه Pages
رو انتخاب میکنیم:
اینجا Connect to Git
رو میزنید و میرید مرحله بعد:
اینجا روی BPB-Worker-Panel
کلیک کنید تا فعال بشه و Begin Setup
رو بزنید. مرحلهی بعد یه Project Name
داره که میشه دامین پنل شما، اونو حتما عوض کنید که کلمهی bpb توش نباشه و یه اسم دلخواه بذارید وگرنه ممکنه اکانتتون توسط کلادفلر شناسایی بشه.
دیگه الان میتونید Save and Deploy
رو بزنید.
یه چند ثانیه زمان میخواد تا پروژه نصب بشه، صبر کنید تا دکمهی Continue to Project
ظاهر بشه و بزنید و برید تو صفحهی پروژه.
خب پروژهی شما ساخته شد ولی هنوز قابل استفاده نیست. از همین صفحهی Deployment
قسمت Production
روی visit
کلیک کنید، میبینید ارور داده که اول باید UUID و Trojan Password رو تنظیم کنید، یه لینک داره، داخل مرورگر بازش کنید بذارید باشه برای مرحله بعد نیاز میشه.
از منوی سمت چپ میریم به قسمت KV:
روی Create a namespace
کلیک میکنیم و یه اسم دلخواه بهش میدیم و Add میکنیم.
برگردید به قسمت Workers and Pages
و وارد اون پروژهی Pages بشید که ساختید، با توجه به عکس زیر برید قسمت Settings
:
اینجا مثل ورکر تو صفحه قسمت Bindings
رو پیدا کنید، Add
بزنید و KV Namespace
رو انتخاب کنید، Variable name
باید حتما bpb
باشه (همینجوری که نوشتم) و KV namespace
اون KV رو انتخاب میکنید که مرحله دو ساختید و save
میکنید.
خب کارمون با KV تموم شد.
تو همین قسمت Settings
بخش Variables and Secrets
رو میبینید، Add variable
بزنید خونه اول UUID
با حروف بزرگ، UUID رو هم میتونید از همون لینک مرحله قبل بگیرید و کپی کنید قسمت Value و Save
کنید. یک بار دیگه Add variable
بزنید خونه اول TROJAN_PASS
با حروف بزرگ، پسورد Trojan رو هم میتونید از همون لینک مرحله قبل بگیرید و کپی کنید قسمت Value و Save
کنید.
از نوار بالا به قسمت Deployment
برگردید و از بخش Production
برید به view details
:
حالا تو قسمت Deployment detail
دکمهی Manage Deployment
رو بزنید و Retry deployment
:
چند ثانیه صبر میکنید تا مراحلش تموم شه و کار ما تموم شد!
یه Back بزنید و از قسمت Production
روی visit site
بزنید، بعد یه panel/
تهش اضافه کنید و وارد پنل بشید.
آموزشهای تنظیمات و نکات هم که تو آموزش اصلی هست.
نصب به پایان رسیده و توضیحاتی که در ادامه اومده شاید برای عموم لازم نباشه!
ما یه مشکلی داریم که این کد به صورت پیشفرض از تعداد زیادی IP Proxy استفاده میکنه که برای هر بار اتصال به سایتای پشت کلادفلر ( شامل بخش وسیعی از وب میشه) به صورت رندوم IP جدیدی انتخاب میکنه و در نتیجه به صورت متناوب IP شما تغییر پیدا میکنه. این تغییر IP شاید برای برخی مشکل ساز باشه (مخصوصا تریدرها). برای تغییر Proxy IP از ورژن 2.3.5 به بعد میتونید از طریق خود پنل انجام بدید، به این ترتیب که اعمال میکنید و ساب رو آپدیت میکنید و تمام. اما توصیه میکنم از روشی که در ادامه توضیح دادم استفاده کنید چون:
Caution
اگر از طریق پنل Proxy IP رو اعمال کنید و اون IP از کار بیافته، باید یه IP جایگزین کنید و ساب رو آپدیت کنید. معنیش اینه که اگر کانفیگ اهدا کرده باشید و Proxy IP رو تغییر بدید دیگه فایدهای نداره چون یوزر ساب نداره که کانفیگ رو آپدیت کنه. بنابراین توصیه میشه از این روش فقط برای مصرف شخصی استفاده کنید. اما خوبی روش دوم که در ادامه میگم اینه که از طریق داشبورد کلادفلر انجام میشه و نیازی به آپدیت کردن کانفیگها نداره.
برای تغییر Proxy IP وقتی وارد پروژه میشد از قسمت Settings
قسمت Environment variables
رو باز میکنید:
اینجا باید مقادیر رو مشخص کنید. هر بار Add
میزنید و یه کدوم رو وارد میکنید و Save
میکنید:
حالا Add variable
بزنید خونه اول PROXYIP
با حروف بزرگ، IP رو هم میتونید از لینک زیر بگیرید، اینا رو باز کنید یه تعدادی IP نشون میده که میتونید کشورشون رو هم چک کنید و یک یا چندتا انتخاب کنید:
Tip
اگر خواستید چند Proxy IP داشته باشید میتونید با ویرگول وارد کنید، مثل 151.213.181.145
,5.163.51.41
,bpb.yousef.isegaro.com
از نوار بالا به قسمت Deployment
برگردید و از بخش Production
برید به view details
و تو قسمت Deployment detail
دکمهی Manage Deployment
رو بزنید و Retry deployment
.
برای این کار به داشبورد کلادفلر میرید و از قسمت Workers and Pages
پنل خودتون رو انتخاب میکنید. به قسمت Custom domains
میرید و set up a custom domain
رو میزنید. اینجا ازتون میخواد یه Domain وارد کنید (دقت کنید قبلا باید یه دامنه خریداری کرده باشید و روی همین اکانت فعال کرده باشید که اینجا جای آموزشش نیست). حالا فرض کنید یه دامنه دارید به اسم bpb.com، در قسمت Domain میتونید خود دامنه یا یک زیردامنه دلخواه بزنید. مثلا xyz.bpb.com، بعد هم Continue
رو میزنید و در صفحهی بعد هم Activate domain
. کلادفلر خودش میره Pages رو به دامنهی شما متصل میکنه (یه مدت طول میکشه تا این اتفاق بیافته، خود کلادفلر میگه ممکنه تا 48 ساعت طول بکشه). خب بعد از این مدت میتونید از آدرس https://xyz.bpb.com/panel
وارد پنلتون بشید و سابهای جدید رو دریافت کنید.
یکی از مزیتهای Pages نسبت به Worker اینه که وقتی آپدیتی برای کد منتشر میشه دیگه نیازی نیست برید ورژن جدید worker.js رو دانلود کنید و روز از نو روزی از نو! اصلا برای آپدیت دیگه کاری به کلادفلر ندارید. کافیه به گیتهاب خودتون برید وارد ریپازیتوری BPB-Worker-Panel
بشید و از اینجا Sync fork
رو بزنید:
بعد Update branch
رو میزنید و تمام. خوبیش اینه که با این کار Cloudflare Pages خودش متوجه میشه و در حدود ۱ دقیقه بعد خودبخود آپدیت میکنه براتون.