رفتن به محتوا

بازنویسی آدرس

بازنویسی (Rewrite) آدرسی را که nsin به سرور شما می‌فرستد تغییر می‌دهد، در حالی که بازدیدکننده همان آدرسی را می‌بیند که تایپ کرده است. چیزی در نوار آدرس مرورگر عوض نمی‌شود — نه ریدایرکتی، نه رفت‌وبرگشت اضافه‌ای.

تفاوت آن با ریدایرکت همین است:

نوار آدرس بازدیدکنندهرفت‌وبرگشت اضافه
ریدایرکتعوض می‌شودبله
بازنویسیثابت می‌ماندخیر

چه زمانی از بازنویسی استفاده کنیم

Section titled “چه زمانی از بازنویسی استفاده کنیم”
  • سایت شما روی سرور به پوشه‌ی جدیدی منتقل شده اما می‌خواهید آدرس‌های عمومی قبلی دقیقاً مثل قبل کار کنند.
  • می‌خواهید آدرس عمومی تمیزی (/blog/hello) با آدرس داخلی شلوغ‌تری (/index.php?p=hello) سرویس شود.
  • بخشی از سایت را با اپلیکیشن دیگری سرویس می‌دهید و می‌خواهید مسیرها هم‌راستا شوند.
  1. به قوانینافزودن قانونبازنویسی آدرس بروید.
  2. تعیین کنید شامل چه آدرس‌هایی می‌شود (تطبیق مسیر).
  3. مسیری که به سرور شما فرستاده می‌شود را وارد کنید.
  4. تعیین کنید با کوئری‌استرینگ چه شود (پایین‌تر).
  5. ذخیره کنید.

کوئری‌استرینگ همان بخش ?a=1&b=2 است. یکی را انتخاب کنید:

  • حفظ — بدون تغییر منتقل می‌شود. انتخاب معمول.
  • جایگزینی — کوئری‌استرینگ ثابتی از خودتان فرستاده می‌شود.
  • حذف — پیش از رسیدن به سرور شما کاملاً حذف می‌شود.

مسیرها به دو شکل تطبیق می‌یابند:

  • وایلدکارت/old/* همه‌چیز زیر /old/ را می‌گیرد. ساده و امن.
  • عبارت باقاعده (Regex) — وقتی لازم است بخشی از آدرس را بگیرید و در مقصد دوباره استفاده کنید. گروه‌های ثبت‌شده در مسیر ارسالی به سرور قابل استفاده‌اند.

هم‌چنین می‌توانید مسیرهایی را که در غیر این صورت تطبیق می‌یافتند مستثنا کنید — برای جدا کردن یک پوشه از یک قانون گسترده مفید است.

سرویس‌دادن آدرس قدیمی از پوشه‌ی جدید

  • شامل: /downloads/*
  • ارسال به سرور به‌صورت: /files/*
  • کوئری‌استرینگ: حفظ

بازدیدکننده‌ای که /downloads/report.pdf را می‌خواهد، فایلی را می‌گیرد که سرور شما در /files/report.pdf دارد و نوار آدرس او همچنان /downloads/report.pdf است.

بازنویسی یا ریدایرکت؟ اگر می‌خواهید لینک‌های قدیمی نامرئی کار کنند، بازنویسی. اگر می‌خواهید کاربران و موتورهای جستجو آدرس جدید را یاد بگیرند، ریدایرکت.

بازنویسی من هیچ کاری نمی‌کند. بازنویسی فقط روی ترافیکی اجرا می‌شود که از nsin عبور می‌کند. بررسی کنید رکورد آن میزبان پراکسی‌شده باشد — به مدیریت رکوردهای دی‌ان‌اس ببینید.

دو قانون به یک آدرس می‌خورند. قانون بالاتر برنده است. به مرور قوانین ببینید.