وبلاگ شتابان هاست

نصب و فعال کردن URL Rewrite در IIS ویندوز سرور

فعال کردن URL Rewrite در IIS ویندوز سرور

برای فعال کردن URL Rewrite در IIS، ماژول رسمی URL Rewrite 2.1 را نصب کنید و سپس در IIS Manager به بخش URL Rewrite سایت بروید. نصب این ماژول به‌تنهایی آدرس‌ها را تغییر نمی‌دهد؛ باید قانون مناسب برنامه خود را تعریف کنید. در این راهنما مسیر نصب، تفاوت Rewrite و Redirect و بررسی خطاهای رایج را می‌بینید.

IIS کوتاه‌شده Internet Information Services و وب‌سرور مایکروسافت است. URL Rewrite یک ماژول برای مدیریت قواعد آدرس در آن است؛ برنامه Visual Basic نیست و برای همه سایت‌ها نیز به‌صورت پیش‌فرض نصب نشده است.

روش قدیمی Web Platform Installer را کنار بگذارید

Web Platform Installer در ۳۱ دسامبر ۲۰۲۲ بازنشسته شده است. بنابراین آموزش‌هایی که نصب ماژول را فقط از فهرست محصولات WebPI انجام می‌دهند، مسیر مناسبی برای نصب جدید نیستند. این تغییر در صفحه رسمی Web Platform Installer اعلام شده است.

پیش‌نیازهای نصب

نصب URL Rewrite و پیدا کردن آن در IIS Manager

  1. صفحه دانلود رسمی URL Rewrite را باز کنید و نصب‌کننده مناسب را دریافت کنید.
  2. نصب‌کننده را با دسترسی مدیر اجرا و مراحل نصب را تکمیل کنید. اگر نصب‌کننده درخواست راه‌اندازی مجدد داشت، آن را در زمان مناسب سرویس انجام دهید.
  3. IIS Manager را ببندید و دوباره باز کنید.
  4. از بخش Connections، سرور یا سایت موردنظر را انتخاب کنید و در Features View، آیکون URL Rewrite را پیدا کنید.

این تصویر مربوط به رابط نسخه قدیمی IIS Manager است؛ مسیر Features View و نام URL Rewrite معیار پیدا کردن ماژول است، نه یکسان بودن ظاهر پنجره.

Rewrite و Redirect چه تفاوتی دارند؟

در Rewrite، IIS درخواست را در داخل سرور به مسیر دیگری می‌فرستد و لزوما آدرس مرورگر تغییر نمی‌کند. در Redirect، پاسخ تغییر مسیر به مرورگر داده می‌شود و آدرس مقصد نمایش داده خواهد شد. انتخاب اشتباه بین این دو می‌تواند مسیرهای برنامه یا آدرس‌های قابل ایندکس را تغییر دهد. توضیح ساختار قواعد در مستندات رسمی URL Rewrite آمده است.

قانون را ابتدا روی یک مسیر محدود آزمایش کنید

در سطح همان سایت وارد URL Rewrite شوید و از Add Rule(s) قانون موردنیاز را بسازید. قبل از ذخیره بررسی کنید الگو کدام آدرس‌ها را می‌گیرد، مقصد چیست و آیا قانون روی مسیرهای فایل، تصاویر یا مدیریت هم اثر می‌گذارد. فایل web.config موجود را با یک نمونه عمومی جایگزین نکنید.

برای تغییر مسیر آزمایشی، ابتدا پاسخ موقت و یک مسیر مشخص را بررسی کنید. تغییر مسیر دائمی 301 را زمانی فعال کنید که مقصد نهایی و رفتار آن تایید شده باشد. آدرس عادی، یک آدرس دارای پارامتر و یک مسیر ناموجود را آزمایش کنید؛ نتیجه نباید به حلقه تغییر مسیر یا خطای 500 برسد.

اگر آیکون URL Rewrite دیده نمی‌شود

اگر بعد از تغییر web.config خطای 500.19 گرفتید

ابتدا آخرین تغییر را با نسخه پشتیبان مقایسه کنید. این خطا فقط یک علت ندارد: نصب نبودن ماژول، XML نامعتبر، تکرار بخش تنظیمات یا قفل بودن آن بخش باید بر اساس جزئیات خطا بررسی شود. خاموش کردن محدودیت‌های کل سرور، جای تشخیص علت را نمی‌گیرد.

آیا نصب URL Rewrite سایت را خودکار سئویی می‌کند؟

خیر. ماژول فقط ابزار اجرای قانون است. آدرس صحیح، مقصد ریدایرکت و سازگاری با مسیرهای برنامه باید درست انتخاب شوند.

آیا بعد از هر تغییر باید همه IIS را ری‌استارت کرد؟

برای هر ویرایش ساده قانون، ری‌استارت عمومی سرور قدم اول نیست. ابتدا نتیجه همان سایت و پیام نصب‌کننده یا خطای ثبت‌شده را بررسی کنید.

خروج از نسخه موبایل