Loading...

راهنمای CDN.com.tr

تغییر مسیر یک دامنه به دامنهٔ دیگر (301)

درخواست‌های یک دامنه را از تب تغییر مسیرها در قوانین تحویل، با تغییر مسیر دائمی (301) به دامنهٔ دیگری بفرستید. مسیر و رشتهٔ پرس‌وجو حفظ می‌شوند و بررسی‌های گواهی Auto SSL در /.well-known همچنان کار می‌کنند.

تغییر مسیر یک دامنه به دامنهٔ دیگر (301)

درخواست‌های یک دامنه را از تب تغییر مسیرها در قوانین تحویل، با تغییر مسیر دائمی (301) به دامنهٔ دیگری بفرستید. مسیر و رشتهٔ پرس‌وجو حفظ می‌شوند و بررسی‌های گواهی Auto SSL در /.well-known همچنان کار می‌کنند.

راهنماهای مرتبط

چرا مرورگرها یک 301 را به خاطر می‌سپارند، HTTPS روی دامنه‌ای که تغییر مسیر داده می‌شود، گام HSTS پس از تغییر مسیر به HTTPS، و قوانینی که دامنه پس از حذف تغییر مسیرش دوباره از آن‌ها استفاده می‌کند.

پیش‌زمینه

تغییر مسیر 301 یا 302: کدام را به کار ببرید، و اشتباهاتی که ماندگار می‌شوند

چرا مرورگرها یک 301 را به خاطر می‌سپارند، زنجیره‌های تغییر مسیر، و چگونه آن‌ها را با curl بازبینی کنید.

خواندن راهنما
پس از تغییر مسیر به HTTPS

روشن کردن HSTS برای نام‌میزبان‌های شما

وقتی بازدیدکنندگان HTTP به HTTPS تغییر مسیر داده شدند، HSTS به مرورگرهایی که بازمی‌گردند اجازه می‌دهد از درخواست HTTP صرف‌نظر کنند.

باز کردن موضوع
گواهی‌ها

استفاده از Auto SSL

تغییر مسیر روی HTTPS به گواهی روی دامنه‌ای که تغییر مسیر داده می‌شود نیاز دارد.

باز کردن موضوع
قوانین تحویل

تعریف رفتار کش با Add Rule

قوانینی که دامنه را روی پروتکل‌هایی ارائه می‌دهند که روی آن‌ها تغییر مسیر داده نمی‌شود.

باز کردن موضوع

مسیر در پنل

  1. پنل مدیریت
  2. قوانین تحویل
  3. تغییر مسیرها
  4. تغییر مسیر دامنه‌ها
  5. افزودن تغییر مسیر

پیش‌نیازها

  • دامنه‌ای که باید تغییر مسیر داده شود با یک قانون تحویل این حساب ارائه می‌شود؛ برای HTTPS، گواهی هم دارد.
  • دامنهٔ مقصد از قبل روی پروتکلی که بازدیدکنندگان را به آن می‌فرستید پاسخ می‌دهد.
  • نقش مالک یا ویرایشگر: بیننده‌ها می‌توانند تغییر مسیرها را ببینند اما نمی‌توانند آن‌ها را تغییر دهند.

مدل تصمیم‌گیری

کدام پروتکل‌ها؟

برای درخواست‌ها از طریق تعیین می‌کند کدام درخواست‌ها تغییر مسیر داده شوند. یک تغییر مسیر جدید با هر دو گزینهٔ علامت‌خورده شروع می‌شود.

  • HTTP و HTTPS: یک دامنهٔ کامل، مثل دامنهٔ یک برند قدیمی، را به دامنهٔ جدید منتقل کنید.
  • فقط HTTP، با https:// و همان دامنه زیر به: بازدیدکنندگان HTTP را به HTTPS بفرستید.

کدام پروتکل روی مقصد؟

انتخاب زیر به.

  • همان پروتکل درخواست: درخواست HTTP به http:// روی مقصد می‌رود و درخواست HTTPS به https://.
  • https://: هر درخواستی که تغییر مسیر داده می‌شود به HTTPS روی مقصد می‌رود.
  • http://: هر درخواستی که تغییر مسیر داده می‌شود به HTTP روی مقصد می‌رود.

تغییر مسیر دامنه یا تغییر مسیر موبایل؟

هر دو در تب تغییر مسیرها هستند.

  • تغییر مسیر دامنه: دائمی (301)، برای دامنه‌هایی که علامت می‌زنید.
  • تغییر مسیر موبایل: موقت (302)، برای بازدیدکنندگانِ مرورگرهای موبایل، در همهٔ دامنه‌های حساب.

راهنمای گام‌به‌گام

1

تغییر مسیر را اضافه کنید

یک تغییر مسیر می‌تواند چند دامنهٔ حساب را پوشش دهد.

  • قوانین تحویل را باز کنید، به تغییر مسیرها بروید و روی افزودن تغییر مسیر بزنید.
  • دامنه‌ها را زیر تغییر مسیر این دامنه‌ها و پروتکل‌ها را زیر برای درخواست‌ها از طریق علامت بزنید.
  • زیر به، پروتکل را انتخاب کنید و دامنهٔ مقصد را وارد کنید، سپس سطر نمونه را بخوانید.
  • روی ذخیرهٔ تغییر مسیر بزنید.

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

2

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

یک URL قدیمی با مسیر و رشتهٔ پرس‌وجو را روی هر پروتکلی که تغییر مسیر داده می‌شود درخواست دهید و، در دامنه‌ای با Auto SSL، یک مسیر در /.well-known/ را روی HTTP.

  • URL قدیمی را روی HTTP و روی HTTPS درخواست دهید.
  • یک مسیر در /.well-known/ را روی دامنه‌ای که تغییر مسیر داده می‌شود از طریق HTTP درخواست دهید (در دامنه‌ای با Auto SSL).

نتیجه مورد انتظار: یک 301 که location آن مقصد با همان مسیر و رشتهٔ پرس‌وجو است؛ به درخواست /.well-known/ (در دامنه‌ای با Auto SSL) بدون تغییر مسیر به مقصد پاسخ داده می‌شود.

معادل cdnctl
curl -s -o /dev/null -D - 'http://old.example.com/blog/post?id=7' | grep -iE '^(HTTP|location)'
curl -s -o /dev/null -D - 'https://old.example.com/blog/post?id=7' | grep -iE '^(HTTP|location)'
curl -s -o /dev/null -w '%{http_code} %{redirect_url}\n' http://old.example.com/.well-known/acme-challenge/test
3

آن را تغییر دهید یا حذف کنید

یک تغییر مسیر تا وقتی حذفش نکنید باقی می‌ماند.

  • برای تغییر دامنه‌ها، پروتکل‌ها یا مقصد آن، روی ویرایش در سطر تغییر مسیر بزنید، سپس روی ذخیرهٔ تغییر مسیر.
  • روی حذف و سپس برای تأیید روی حذف تغییر مسیر بزنید.

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

راستی‌آزمایی

  • curl -s -o /dev/null -D - 'http://old.example.com/blog/post?id=7' | grep -iE '^(HTTP|location)' → 301، location: https://new.example.com/blog/post?id=7 (با https:// زیر به)
  • curl -s -o /dev/null -D - 'https://old.example.com/blog/post?id=7' | grep -iE '^(HTTP|location)' → 301، location: https://new.example.com/blog/post?id=7
  • curl -s -o /dev/null -w '%{http_code} %{redirect_url}\n' http://old.example.com/.well-known/acme-challenge/test → بدون تغییر مسیر به مقصد (در دامنه‌ای با Auto SSL)

موارد کاربرد

یک برند از old.example.com به new.example.com منتقل می‌شود، یا یک سایت روی یک نشانی ثابت می‌شود (www.example.com به‌جای example.com، HTTPS به‌جای HTTP)، و هر پیوند قدیمی باید به همان صفحه در نشانی جدید برسد.

جریان کاری سریع

  1. قوانین تحویل حساب را باز کنید و به تب تغییر مسیرها بروید.
  2. در کارت تغییر مسیر دامنه‌ها، روی افزودن تغییر مسیر بزنید.
  3. زیر تغییر مسیر این دامنه‌ها، دامنه‌هایی را که باید تغییر مسیر داده شوند علامت بزنید؛ زیر برای درخواست‌ها از طریق، HTTP، HTTPS یا هر دو را علامت بزنید.
  4. زیر به، همان پروتکل درخواست، https:// یا http:// را انتخاب کنید و دامنهٔ مقصد را بدون مسیر وارد کنید، مثلاً new.example.com. سطر نمونه نشان می‌دهد /blog/post?id=7 به کجا می‌رود.
  5. روی ذخیرهٔ تغییر مسیر بزنید، صبر کنید تا صفحه منتشرشده را نشان دهد، سپس تغییر مسیر را با curl بررسی کنید.

بررسی‌ها

  • پاسخ یک تغییر مسیر دائمی (301) است و Location آن مسیر و رشتهٔ پرس‌وجو را حفظ می‌کند: /blog/post?id=7 روی دامنهٔ قدیمی به /blog/post?id=7 روی مقصد می‌رود.
  • در دامنه‌ای که گواهی‌اش از Auto SSL می‌آید، بررسی‌های گواهی در /.well-known/ همچنان کار می‌کنند: روی HTTP، به این درخواست‌ها قانون بررسی گواهیِ دامنه پاسخ می‌دهد، نه تغییر مسیر.
  • تغییر مسیر جایی کار می‌کند که لبه دامنه را ارائه می‌دهد: روی HTTP، یک قانون تحویل دامنه را فهرست می‌کند؛ روی HTTPS، یک قانون HTTPS آن را فهرست می‌کند و دامنه گواهی دارد. وقتی یکی از این‌ها نباشد، ویرایشگر می‌گوید تغییر مسیر آنجا اثری ندارد.
  • تا وقتی تغییر مسیر روشن است، قوانین دیگر دامنه روی پروتکل‌هایی که تغییر مسیر داده می‌شوند دیگر اعمال نمی‌شوند و ویرایشگر تعداد آن‌ها را نشان می‌دهد. با حذف تغییر مسیر، دامنه دوباره طبق قوانینش ارائه می‌شود.
  • تا وقتی بهینه‌سازی تصویر در سطح حساب روشن است، درخواست‌های .jpg، .jpeg و .png به دامنه‌ای که تغییر مسیر داده می‌شود، به‌جای تغییر مسیر، بهینه‌سازی و ارائه می‌شوند؛ سطر تغییر مسیر در جدول تغییر مسیر دامنه‌ها و ویرایشگر این را برای هر دامنه می‌گویند.
  • هر دامنه برای هر پروتکل یک تغییر مسیر دارد: ویرایشگر تغییر مسیر دومی را برای دامنه‌ای که تغییر مسیر دیگری از قبل روی همان پروتکل پوشش می‌دهد نمی‌پذیرد.
  • ویرایشگر تغییر مسیری را که یک دامنه را روی همان پروتکل به خودش بفرستد نمی‌پذیرد. تغییر مسیر http://www.example.com به https://www.example.com حلقه نیست و ویرایشگر آن را می‌پذیرد.

پرسش‌های متداول

چطور بازدیدکنندگان HTTP را روی همان دامنه به HTTPS بفرستم؟

برای آن دامنه یک تغییر مسیر اضافه کنید، زیر برای درخواست‌ها از طریق فقط HTTP را علامت بزنید، زیر به گزینهٔ https:// را انتخاب کنید و همان دامنه را وارد کنید. آنگاه درخواست‌های HTTP یک 301 به نشانی HTTPS با همان مسیر و رشتهٔ پرس‌وجو می‌گیرند و درخواست‌های HTTPS مثل قبل طبق قوانین دامنه ارائه می‌شوند. مطمئن شوید که دامنه از قبل با یک گواهی روی HTTPS کار می‌کند.

آیا example.com و www.example.com را جداگانه تغییر مسیر دهم؟

دامنه‌ها همان‌طور که نوشته شده‌اند تطبیق داده می‌شوند، پس هر شکلی را که ارائه می‌دهید و باید به مقصد برود علامت بزنید: وقتی هم example.com و هم www.example.com به new.example.com منتقل می‌شوند، هر دو را علامت بزنید. برای ثابت شدن روی www.example.com، فقط example.com را علامت بزنید.

چرا ویرایشگر می‌گوید تغییر مسیر اثری ندارد؟

لبه یک دامنه را فقط جایی تغییر مسیر می‌دهد که آن را ارائه می‌کند. روی HTTP، یک قانون تحویل باید دامنه را فهرست کند؛ روی HTTPS، یک قانون HTTPS باید آن را فهرست کند و دامنه به گواهی نیاز دارد. ابتدا دامنه را به یک قانون اضافه کنید، یا گواهی آن را کامل کنید.

یادداشت‌های زیر یک تغییر مسیر در جدول چه معنایی دارند؟

هر یادداشت می‌گوید تغییر مسیر کجا آن‌طور که نوشته شده کار نمی‌کند. استفاده نمی‌شود: یک تغییر مسیر قدیمی‌تر از قبل آن دامنه را روی آن پروتکل پوشش می‌دهد؛ یکی از آن دو را تغییر دهید یا حذف کنید. مقصدی که پروتکل ندارد مرورگرها را روی همان دامنه نگه می‌دارد: روی ویرایش بزنید، پروتکل زیر به را بررسی کنید و روی ذخیرهٔ تغییر مسیر بزنید. دامنه‌ای که برای یک پروتکل قانون یا گواهی ندارد، روی آن پروتکل تغییر مسیر داده نمی‌شود؛ دامنه را به یک قانون اضافه کنید یا گواهی آن را کامل کنید. تا وقتی بهینه‌سازی تصویر در سطح حساب روشن است، درخواست‌های .jpg، .jpeg و .png به‌جای تغییر مسیر، بهینه‌سازی می‌شوند.

یک تغییر مسیر را حذف کردم، اما مرورگرم هنوز به مقصد می‌رود.

مرورگرها تغییر مسیرهای دائمی (301) را به خاطر می‌سپارند. با curl یا یک پنجرهٔ خصوصی بررسی کنید: پس از حذف، دامنه دوباره طبق قوانینش ارائه می‌شود.

بازدیدکنندگانی که با مرورگرهای موبایل می‌آیند چه؟

کارت تغییر مسیر موبایل در همین تب، بازدیدکنندگانِ مرورگرهای موبایل را با تغییر مسیر موقت (302) در همهٔ دامنه‌های این حساب به دامنهٔ دیگری می‌فرستد و مسیر و رشتهٔ پرس‌وجو را حفظ می‌کند. تا وقتی روشن است، مرورگرهای موبایل اول همان 302 را می‌گیرند. دامنهٔ سایت موبایل باید دامنه‌ای باشد که این حساب آن را ارائه نمی‌دهد.