Skip to content

pouriavelaei/web_proxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔥 مثلاً فیلتر نیست (Masalan Filter Nist)

یک وب‌پراکسی فوق‌سبک و تجربی که با استفاده از Cloudflare Workers نوشته شده است. این پروژه با هدف دسترسی سریع به محتوای متنی، مستندات برنامه‌نویسی و وب‌گردی سبک طراحی شده است.

An ultra-lightweight and experimental web proxy built on Cloudflare Workers. Designed for quick access to text-based content, documentation, and light browsing without any client-side installations.


📸 پیش‌نمایش | Preview

Web Proxy Screenshot


✨ ویژگی‌ها | Features

  • 🚀 بدون نیاز به نصب: کاملاً مبتنی بر مرورگر
  • 🛡️ تمرکز بر حریم خصوصی: استفاده از موتور جستجوی Mojeek به جای گوگل
  • 🧠 هوشمند: بازنویسی داینامیک لینک‌ها، فرم‌ها و درخواست‌های AJAX
  • 💻 بهینه‌سازی شده برای برنامه‌نویس‌ها: دسترسی سریع به MDN، StackOverflow، GitHub و...
  • سرعت بالا: اجرا روی شبکه جهانی Cloudflare
  • 🎨 رابط کاربری فارسی: طراحی ساده و کاربردی
  • 🚀 No Installation Required: Fully browser-based
  • 🛡️ Privacy-Focused: Uses Mojeek search engine instead of Google
  • 🧠 Smart: Dynamic rewriting of links, forms, and AJAX requests
  • 💻 Optimized for Developers: Quick access to MDN, StackOverflow, GitHub, etc.
  • High Speed: Runs on Cloudflare's global network
  • 🎨 Persian UI: Simple and functional design

⚠️ محدودیت‌ها (بخوانید!) | Limitations (Read First!)

این پروژه در مرحله آلفا و صرفاً یک کنجکاوی فنی (Experimental) است. لطفاً به موارد زیر توجه کنید:

This project is in alpha stage and purely an experimental endeavor. Please note the following:

🚫 کارهایی که نمی‌تواند انجام دهد | What It Can't Do

  • 🎥 ویدیو: در حال حاضر از استریم ویدیو (مانند YouTube، Vimeo) پشتیبانی نمی‌کند
  • 🔒 سایت‌های حساس: سایت‌هایی با کپچا (CAPTCHA) یا کوکی‌های پیچیده امنیتی ممکن است به درستی کار نکنند
  • 🏦 سایت‌های بانکی: اصلاً توصیه نمی‌شود - برای امنیت خودتان از VPN استفاده کنید
  • 🇮🇷 جستجوی فارسی: Mojeek در حال حاضر نتایج فارسی قوی ندارد (نتیجه نمی‌دهد)
  • 🎥 Video: Currently doesn't support video streaming (like YouTube, Vimeo)
  • 🔒 Sensitive Sites: Sites with CAPTCHA or complex security cookies may not work properly
  • 🏦 Banking Sites: Not recommended at all - use a VPN for your security
  • 🇮🇷 Persian Search: Mojeek currently doesn't have strong Persian results (returns empty)

✅ بهترین کاربرد | Best Use Cases

  • 📚 خواندن مستندات (MDN، DevDocs، W3Schools)
  • 💬 دسترسی به فروم‌ها و Q&A ها (StackOverflow، Reddit)
  • 📰 خواندن مقالات و بلاگ‌ها
  • 🔍 جستجوی سریع اطلاعات
  • 📖 مطالعه محتوای متنی
  • 📚 Reading documentation (MDN, DevDocs, W3Schools)
  • 💬 Accessing forums and Q&A (StackOverflow, Reddit)
  • 📰 Reading articles and blogs
  • 🔍 Quick information search
  • 📖 Browsing text-based content

🏗️ معماری | Architecture

این پروژه از Cloudflare Workers استفاده می‌کند که یک پلتفرم Serverless و Edge Computing است:

This project uses Cloudflare Workers, a serverless edge computing platform:

User Request → Cloudflare Worker → Target Website
                     ↓
           Dynamic Content Rewriting
                     ↓
              Modified Response → User

ویژگی‌های فنی:

  • بازنویسی HTML، CSS و JavaScript به صورت داینامیک
  • Forward کردن کوکی‌ها (بدون ذخیره‌سازی - محدودیت برای سایت‌های وابسته به Session)
  • پشتیبانی از ریدایرکت‌ها و URL های نسبی
  • شبیه‌سازی هدرهای مرورگر واقعی
  • مدیریت فرم‌ها و POST request ها

Technical Features:

  • Dynamic HTML, CSS, and JavaScript rewriting
  • Cookie forwarding (no persistence - limited for session-dependent sites)
  • Support for redirects and relative URLs
  • Real browser header simulation
  • Form and POST request handling

🛠️ نصب و راه‌اندازی | Deployment

🚀 روش 1: استقرار از طریق GitHub (توصیه می‌شود)

گام 1: حساب رایگان Cloudflare بسازید

گام 2: این repository را Fork کنید

  • روی دکمه Fork در بالای صفحه کلیک کنید
  • یا مستقیماً از repository من استفاده کنید

گام 3: در Cloudflare Dashboard:

  • به بخش Workers & Pages بروید
  • روی Create Application کلیک کنید
  • تب Pages را انتخاب کنید
  • Connect to Git → GitHub را انتخاب کنید
  • اگر اولین بار است، اجازه دسترسی به GitHub بدهید
  • Repository فورک شده (یا pouriavelaei/web_proxy) را انتخاب کنید
  • Begin setup کلیک کنید

گام 4: تنظیمات Build:

  • Framework preset: None
  • Build command: خالی بگذارید
  • Build output directory: /
  • Root directory: /

گام 5: روی Save and Deploy کلیک کنید

تمام! پراکسی شما آماده است: https://web-proxy.pages.dev

هر بار که تغییری در GitHub بدهید، خودکار deploy می‌شود! 🔄


🔧 روش 2: استقرار مستقیم کد (بدون Git)

اگر نمی‌خواهید از GitHub استفاده کنید:

گام 1-2: حساب Cloudflare بسازید و به Workers & Pages بروید

گام 3: Create Worker را انتخاب کنید

گام 4:

  • روی Quick Edit کلیک کنید
  • کد موجود را پاک کنید
  • محتوای worker.js را کپی کنید
  • در ویرایشگر Paste کنید
  • Save and Deploy کلیک کنید

آماده است: https://your-worker.your-subdomain.workers.dev

⚠️ توجه: با این روش باید تغییرات را دستی اعمال کنید.


⚙️ تنظیمات اختیاری

تغییر نام:

  • Settings → General → Rename

افزودن دامنه سفارشی:

  • Settings → Triggers → Add Custom Domain

مشاهده لاگ‌ها:

  • بخش Logs در داشبورد Worker

⚠️ نکته مهم برای روش GitHub: اگر از روش 1 استفاده کردید، فایل wrangler.jsonc را ویرایش کنید و name را با نام Worker که در Cloudflare ساختید یکسان کنید:

{
    "name": "your-worker-name",  // همان نامی که در Cloudflare انتخاب کردید
    "main": "worker.js",
    "compatibility_date": "2026-02-08"
}

این کار برای عملکرد صحیح ضروری نیست، اما برای مدیریت بهتر توصیه می‌شود.

🚀 Method 1: Deploy via GitHub (Recommended)

Step 1: Create a free Cloudflare account

Step 2: Fork this repository

  • Click the Fork button at the top
  • Or use my repository directly

Step 3: In Cloudflare Dashboard:

  • Go to Workers & Pages
  • Click Create Application
  • Select Pages tab
  • Connect to Git → Select GitHub
  • Grant access if first time
  • Select your forked repo (or pouriavelaei/web_proxy)
  • Click Begin setup

Step 4: Build Settings:

  • Framework preset: None
  • Build command: leave empty
  • Build output directory: /
  • Root directory: /

Step 5: Click Save and Deploy

Done! Your proxy is live: https://web-proxy.pages.dev

Auto-deploys on every Git push! 🔄


🔧 Method 2: Direct Code Deploy (Without Git)

If you don't want to use GitHub:

Step 1-2: Create Cloudflare account and go to Workers & Pages

Step 3: Select Create Worker

Step 4:

  • Click Quick Edit
  • Delete existing code
  • Copy content from worker.js
  • Paste in editor
  • Click Save and Deploy

Ready: https://your-worker.your-subdomain.workers.dev

⚠️ Note: Manual updates required with this method.


⚙️ Optional Settings

Rename:

  • Settings → General → Rename

Add Custom Domain:

  • Settings → Triggers → Add Custom Domain

View Logs:

  • Logs section in Worker dashboard

⚠️ Important Note for GitHub Method: If you used Method 1, edit wrangler.jsonc and match the name with your Worker name in Cloudflare:

{
    "name": "your-worker-name",  // same name you chose in Cloudflare
    "main": "worker.js",
    "compatibility_date": "2026-02-08"
}

Not required for functionality, but recommended for better management.


🤝 مشارکت | Contributing

این پروژه با وایب نوشته شده و قطعاً جای بهبود دارد! اگر:

  • ایده‌ای برای حل مشکل استریم ویدیو دارید
  • می‌خواهید مدیریت کوکی‌ها را بهتر کنید
  • روشی برای پشتیبانی از CAPTCHA پیدا کرده‌اید
  • قابلیت جدیدی می‌خواهید اضافه کنید

خوشحال می‌شوم Pull Request بفرستید!

This project was built with a coding vibe and exploration in mind. Contributions are more than welcome if you have:

  • Ideas for video streaming support
  • Better cookie management solutions
  • Ways to handle CAPTCHA
  • New features to add

Feel free to open an issue or submit a Pull Request!


📊 محدودیت‌های Cloudflare Workers | Cloudflare Workers Limits

پلن رایگان محدودیت‌های زیر را دارد:

The free plan has the following limits:

Metric Free Tier (2026)
درخواست‌ها در روز
Requests/day
100,000
حجم CPU
CPU Time
10ms per invocation
حافظه
Memory
128MB
ساب‌دومین‌های رایگان
Subdomains
workers.dev (رایگان)

برای استفاده شخصی کاملاً کافی است!

Perfect for personal use!


❓ سوالات متداول | FAQ

چرا Mojeek؟

جواب: گوگل به دلیل داشتن کپچای پیچیده (CAPTCHA) از طریق پراکسی قابل استفاده نبود، و Mojeek بهترین عملکرد را بین موتورهای جایگزین داشت - البته فقط برای جستجوهای انگلیسی.

آیا امن است؟

جواب: کد باز است و می‌توانید خودتان بررسی کنید. اما برای کارهای حساس (بانکی، ایمیل شخصی) از VPN استفاده کنید.

چرا یوتیوب کار نمی‌کند؟

جواب: ویدیوهای استریم نیاز به streaming بایناری، range request های پیچیده، و برخی DRM/codec های خاص دارند. همچنین سایت‌هایی مثل یوتیوب از JavaScript Obfuscation پیشرفته استفاده می‌کنند که rewrite کردن آن‌ها بسیار سخت است.

می‌توانم روی سرور شخصی‌ام نصب کنم؟

جواب: این کد مخصوص Cloudflare Workers است، اما می‌توانید آن را برای Node.js یا Deno تطبیق دهید.

Why Mojeek?

Answer: Google couldn't be used due to its complex CAPTCHA system, and Mojeek had the best performance among alternative search engines - though only for English queries.

Is it secure?

Answer: The code is open-source and you can review it yourself. However, for sensitive tasks (banking, personal email), use a VPN.

Why doesn't YouTube work?

Answer: Video streaming requires binary streaming, complex range requests, and specific DRM/codecs. Additionally, sites like YouTube use advanced JavaScript obfuscation that makes rewriting extremely difficult.

Can I install it on my personal server?

Answer: This code is specifically for Cloudflare Workers, but you can adapt it for Node.js or Deno.


📜 لایسنس | License

این پروژه تحت لایسنس GNU GPL v3 منتشر شده است. برای جزئیات بیشتر فایل LICENSE را مطالعه کنید.

کپی‌رایت: © 2026 پوریا ولایی - تمامی حقوق با رعایت شرایط GPL v3 محفوظ است.

This project is released under the GNU GPL v3 license. See the LICENSE file for details.

Copyright: © 2026 Pouria Velaei - All rights reserved under GPL v3 terms.


�‍💻 توسعه‌دهنده | Developer

پوریا ولایی

Pouria Velaei


�🙏 تشکر | Acknowledgments

  • Cloudflare Workers - پلتفرم اجرا
  • Mojeek - موتور جستجوی بی‌طرف
  • جامعه توسعه‌دهندگان ایرانی ❤️

ساخته شده با ☕ و کنجکاوی فنی | Made with ☕ and technical curiosity

© 2026 Pouria Velaei | Licensed under GNU GPL v3

GitHub Telegram

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors