مرکز آموزش تهران هاست

حرفه ای تر شوید

یکی از نیازهای امروزه ی کاربران هاست سی پنل ریدایرکت دامنه در سی پنل می باشد که راههای مختلفی برای انجام آن وجود دارد.

ریدایرکت (redirect) یا تغییر مسیر معمولا با اهداف مختلفی مانند تغییر دامنه ی یک وبسایت یا تغییر و بروزرسانی آدرس یک صفحه یا کل یک وبسایت انجام می شود.

ریدایرکت دامنه با استفاده از بخشهای مختلف یک وبسایت می تواند انجام شود از جمله ریدایرکت توسط فایروال سرور، ریداریکت توسط نرم افزار وبسرور (مانند آپاچی) و ریدایرکت توسط مفسر زبان برنامه نویسی سایت (برای مثال php) که ما تلاش داریم جهت ریدایرکت دامنه در سی پنل از بهترین گزینه استفاده نماییم یعنی استفاده از کدهای اچ تی اکسز که در واقع (به دلیل ویژگی های htaccess) استفاده از نرم افزار وبسرور آپاچی جهت تغییر مسیر آدرس وبسایت است. ( توضیحه اینکه تغییر مسیر توسط فایروال سرور معمولا تنها برای سرورهای اختصاصی امکانپذیر است و از دسترس مدیر هاست سی پنل در سطح کاربر خارج است و ریداریکت توسط مفسر زبان برنامه نویسی مانند apache به دلیل کاهش سرعت تغییر مسیر توصیه نمی شود)

اگر شما یک هاست دارید که یک دامنه یا چند دامنه به آن متصل است و می خواهید که کل دامنه های هاست اول و دامنه ای که به هاستی دیگر متصل شود ریداریکت شوند از کد زیر استفاده نمایید

Redirect 301 / http://example.com

اگر شما یک دامنه ی اصلی روی یک هاست دارید که که دامنه ی دیگری روی آن پارک است و می خواهید در صورتی که کاربری با دامنه ی دوم سایت شما را باز کرد به صورت خودکار در آدرس بار مرورگر به آدرس اصلی ریدایرکت شود می توانید از کد زیر استفاده نمایید (اگر بیش از یک دامنه را بخواهید ریداریکت کنید باید الگوی کد را تکرار کنید (ما در این کد قصد داریم شکل دامنه ی با و بدون www دامنه ی park1.com را به دامنه ی main.com ریدارکت کنیم)

RewriteEngine on
RewriteCond %{HTTP_HOST} ^park1.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.park1.com [NC]
RewriteRule ^(.*)$ http://main.com/$1 [L,R=301,NC]

اگر شما روی هاست خود یک دامنه ی اصلی دارید و تعداد زیادی دامنه ی دیگر روی آن پارک است و یا قرار است پارک شود و شما تمایل دارید هر دامنه ای که روی دامنه پارک می شود به دامنه اصلی ارجاع داده شود از کد زیر استفاده کنید (ما در این کد شرط می نوسیم که اگر هر دامنه ای غیر از main.com بود به دامنه ی main.com ارجاع داده شود و حتی اگر بی نهایت دامنه مختلف روی هاست پارک شود همه به main.com ریداریکت می شوند)

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !main.com$ [NC]
RewriteRule ^(.*)$ http://main.com/$1 [L,R=301]

توجه داشته باشید که تفاوت کد اول با کدهای دوم و سوم در این است که در کد اول هاست دامنه ها جدا است اما در کدهای دوم و سوم هاست مربوط به دامنه ی اصلی و سایر دامنه ها مشترک است. همچنین تفاوت کد دوم با سوم این است که در کد سوم دیگر نیز برای تک تک دامنه ها یک کد استفاده کنید چون این کد به صورت شرطی می گوید هر دامنه ای غیر از این دامنه بود به این آدرس ریداریکت شود.

3 دیدگاه

  1. مهتاب

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

    • محمد جواد مافی

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

  2. آذین مختاری

    سلام مرسی از آموزشتون، چرا من میزنم فقط دامنه پارک شده ریدایرکت میشه و صفحات دیگه اش ریدایرکت نمیشن و با همون دامنه پارک شده بالا میان؟

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.