Skip to content

v1.3.7-1

Choose a tag to compare

@B3hnamR B3hnamR released this 07 May 19:36
## v1.3.8 (FAST PIPE Compat/Secure Rewrite Modes)

این نسخه یک آپدیت مهم برای حالت Fast Pipe Rewrite است. تمرکز اصلی روی جدا کردن Rewrite به دو حالت مشخص‌تر، بهتر کردن سازگاری با کلاینت‌ها و اپ‌هایی مثل Instagram/YouTube، سخت‌تر کردن مسیر Rewrite، حذف catch-all قبلی، اضافه شدن no-store cache headers و شفاف‌تر شدن راهنمای کلاینت بعد از Deploy بوده است.

Added

FAST PIPE Rewrite Modes

  • حالت قبلی FAST PIPE به دو گزینه مستقل تقسیم شد:

    • FAST PIPE COMPAT
    • FAST PIPE SECURE
  • گزینه FAST PIPE COMPAT به عنوان گزینه پیشنهادی برای شروع اضافه شد.

    • بدون نیاز به هدر x-relay-key.
    • مناسب‌تر برای سازگاری با اپ‌ها و کلاینت‌هایی که request زیاد یا رفتار حساس دارند.
    • پیشنهاد می‌شود همراه با یک مسیر سخت و رندوم مثل /api-b7f39xrelay استفاده شود.
  • گزینه FAST PIPE SECURE اضافه شد.

    • مثل Compat از Rewrite استفاده می‌کند.
    • اما همه درخواست‌ها باید هدر درست x-relay-key داشته باشند.
    • مناسب برای زمانی که قفل هدر لازم است.
    • اگر بعضی اپ‌ها یا کلاینت‌ها مشکل داشتند، تست FAST PIPE COMPAT پیشنهاد می‌شود.

Strict Path Rewrite

  • Rewrite دیگر به صورت catch-all روی کل سایت ساخته نمی‌شود.
  • مسیر Rewrite فقط روی همان PUBLIC_RELAY_PATH انتخاب‌شده ساخته می‌شود.
  • برای مسیر base و wildcard هر دو حالت ساخته می‌شود:
    • مسیر پایه
    • مسیر /:path*

Cache Headers برای Rewrite

  • برای مسیر Relay هدرهای no-store اضافه شد تا دخالت Cache/CDN کمتر شود:
    • Cache-Control: no-store, no-cache, must-revalidate, max-age=0
    • CDN-Cache-Control: no-store
    • Vercel-CDN-Cache-Control: no-store

Path Conversion Helpers

  • چند helper جدید برای ساخت درست source و destination ورسل اضافه شد:
    • Convert-PathToVercelSource
    • Convert-PathToVercelSourceBase
    • Convert-PathToVercelDestination
    • Convert-PathToVercelDestinationBase

Rewrite Client Guidance

  • بعد از Deploy در حالت Rewrite، اینستالر حالا راهنمای کلاینت نشان می‌دهد:
    • Host
    • Path
    • وضعیت نیاز یا عدم نیاز به x-relay-key
    • JSON آماده برای XHTTP Extra در حالت Secure
    • نکات پیشنهادی برای Instagram/YouTube مثل تست Mux، heartbeat و MTU

Changed

Installer Menu

  • منوی Deployment تغییر کرد:

    • [1] FAST PIPE COMPAT
    • [2] FAST PIPE SECURE
    • [3] BALANCED
    • [4] MAX CONN
    • [5] CUSTOM
  • حالت پیش‌فرض از FAST_PIPE_REWRITE_SECURE به FAST_PIPE_REWRITE_COMPAT تغییر کرد.

  • در حالت Custom، اگر runtime روی rewrite باشد، کاربر می‌تواند نوع امنیت Rewrite را انتخاب کند:

    • Compat بدون هدر
    • Secure با هدر اجباری

RELAY_KEY Behavior

  • در FAST PIPE COMPAT دیگر RELAY_KEY گرفته نمی‌شود و هدر لازم نیست.
  • در FAST PIPE SECURE مقدار RELAY_KEY اجباری شد.
  • اینستالر توضیح می‌دهد که در Secure، کلاینت باید در همه درخواست‌ها هدر x-relay-key را بفرستد.

vercel.json Generation

  • خروجی vercel.json برای Rewrite بازنویسی شد:
    • استفاده از strict path به جای /(.*)
    • اضافه شدن headers
    • اضافه شدن trailingSlash = false
    • اعمال شرط header فقط در حالت Secure
    • Rewrite بدون header فقط در حالت Compat

Logs / ENV Handling

  • پیام‌های مربوط به لاگ‌ها عمومی‌تر شدند و دیگر فقط به FAST_PIPE_REWRITE_SECURE اشاره نمی‌کنند.
  • برای همه حالت‌های FAST_PIPE_REWRITE_* توضیح داده می‌شود که:
    • Node runtime اجرا نمی‌شود.
    • Live Logs و Log Analysis وجود ندارد.
    • ENV های Node برای Rewrite کاربرد ندارند.

Documentation

  • README آپدیت شد و تفاوت FAST PIPE COMPAT و FAST PIPE SECURE توضیح داده شد.
  • توضیح داده شد که Fast Pipe:
    • Node Function اجرا نمی‌کند.
    • Fluid/Function/CPU/Memory مصرف نمی‌کند.
    • محدودیت‌هایی مثل throttle، timeout، request log و concurrency control ندارد.
    • مصرف احتمالی آن مربوط به Fast Data Transfer و Edge Requests است.
  • راهنمای استفاده از مسیر رندوم در Compat اضافه شد.
  • راهنمای XHTTP Extra برای حالت Secure اضافه شد.
  • نکات عیب‌یابی برای Instagram/YouTube اضافه شد:
    • اول تست FAST PIPE COMPAT
    • تست Mux ON با concurrency پایین مثل 4 یا 8
    • تست Mux OFF
    • heartbeat/keepalive حدود 15 تا 20 ثانیه
    • فعال نگه داشتن BBR
    • تست MTU مثل 1350 یا 1280 فقط در صورت stall مسیر موبایل

Summary

این نسخه Fast Pipe را تمیزتر، قابل‌فهم‌تر و قابل‌کنترل‌تر می‌کند. COMPAT برای شروع و بیشترین سازگاری پیشنهاد می‌شود، در حالی که SECURE برای کاربرانی است که قفل هدر x-relay-key می‌خواهند. همچنین Rewrite حالا strict-path شده، cache headers دارد، راهنمای کلاینت بهتر شده و مستندات با رفتار جدید هماهنگ شده‌اند.