ریدایرکت ۳۰۱ به معنی تغییر مسیر دائمی از یک آدرس به آدرس دیگریست به طوری که کل امتیازات و جایگاه لینک قبلی حفظ گردد و ارزش آن از دست نرود. به این صورت کاربر به صفحه و آدرس متفاوت از آدرسی که در موتورهای جستجو دیده یا آدرسی که در مرورگر خود وارد کرده، هدایت می شود. یکی از دلایل مهم استفاده از ریدایرکت سایت ۳۰۱ حفظ ارش لینک، سئو و موقعیت آن لینک در موتورهای جستجو می باشد. ریدایرکت ۳۰۱ به موتورهای جستجو اعلام می کند که این تغییر مسیر به صورت دائمی اعمال می شود اما در ریدایرکت ۳۰۲ قضیه کمی متفاوت است به عبارت دیگر ۳۰۲ یک نوع ریدایرکت موقت محسوب می شود که ما در این مقاله چگونگی ریدایرکت کردن دامنه ها را توضیح دادیم
ریدایرکت یک آدرس به آدرس دیگر در سی پنل ریدایرکت آدرس های سایت با فایل htaccess. در هاست
رایج ترین کاربردهای ریدایرکت ۳۰۱
از ریدارکت ۳۰۱ در چه شرایطی استفاده می شود؟
- ریدایرکت یکسری از فایل های خاص در همان دامنه
به عنوان مثال یکسری فایل ها قدیمی شده اند، یا مکانشان تغییر یافته یا به هر دلیلی می بایست به فایل جدیدی ریدایرکت شوند. - ریدایرکت دامنه قدیمی به دامنه جدید
به عنوان مثال دامنه شما بلااستفاده یا قدیمی شده و قصد دارید دامنه با تمام لینک های آن به دامنه جدید با لینک های متناظر منتقل شود. - قصد دارید به صورت فوری از آدرس دامنه همراه با www یا بدون www استفاده کنید.
به عنوان مثال سایت به شکل example.com یا www.example.com نمایش داده بشه. که به صورت کلی باید یکی از این دو متد انتخاب شده باشد. - ریدایرکت یکسری فایل با پسوندهای خاص و مد نظر
مثلا یکسری فایل با پسوند php. را به فایل هایی با پسوند htm. ریدایرکت کنید.
نحوه ریدایرکت سایت
گاهی اوقات بنا به دلایل متعددی تصمیم می گیریم که کل دامنه و آدرس های اون رو تغییر بدیم طوری که کاربر هر لینکی از دامنه قبلی را در مرورگر خودش باز کرد به آدرس متناظر اون در دامنه جدید منتقل بشه. به عنوان مثال اگر دامنه ما test.com بود و کاربری آدرس test.com/contact-us را در مرورگر خودش باز کرد به آدرس test.ir/contact-us هدایت بشه. به عبارت ساده تر علاوه بر اینکه آدرس دامنه ریدایرکت میشه لینک های داخلی سایت هم به آدرس متناظرشون ریدایرکت بشن. خب کار کمی پیچیده شد یعنی نیاز داریم تمام آدرس های سایت خودمون رو مدیریت کنیم در این مقاله قصد داریم به ریدایرکت ۳۰۱ که یکی از چالش های بسیار بزرگی بین کاربران هست و همچنین چگونگی ریدایرکت کردن دامنه ها را بگوئیم.
فایل htaccess کجاست؟
- به کمک آموزش های زیر وارد کنترل پنل هاست خود شوید.
ورود به کنترل پنل سی پنل ورود به دایرکت ادمین - بعد از ورود به هاست، در بالای صفحه سمت راست روی علامت چرخ دنده یا همان تنظیمات هاست کلیک کنید.
- گزینه Show Hidden Files را در حالت فعال قرار دهید.
- به بخش File Manager هاستتان مراجعه کنید.
- در مسیر دامنه مقصد (دامنه ای که ریدایرکت به آن انجام می شود) فایل htaccess. را بیابید. دقت داشته باشید فایل htaccess. مخفی است. در صورتی آن را نیافتید از آموزش نحوه مشاهده فایل های مخفی در سی پنل کمک بگیرید.
- روی فایل htaccess. کلیک راست کرده و گزینه Edit را انتخاب کنید. تا به بخش ویرایشگر ان هدایت شوید. و در مراحل بعدی بتوانید کدهای ریدایرکت را به آن اضافه نمایید.
- در نوار ابزار هاستتان روی گزینه New File کلیک کنید. تا فایل جدیدی ایجاد شود.
- نام آن را htaccess. قرار دهید.
- این فایل باید در مسیر public_html قرار گیرد.
سپس بر اساس نوع ریدایرکتی که قصد انجام آن را دارید طبق مراحل زیر اقدام کنید…
ریدایرکت دامنه با تمام لینک های داخلی آن
ریدایرکت لینک یک دامنه به لینک متناظر از دامنه جدید: تصور کنید قصد دارید یک فایل از دامنه فعلی را به یک فایل دیگر از دامنه جدید ریدایرکت کنید.
به عنوان مثال file.html از دامنه example.com به file.htm از دامنه جدید یعنی example.net ریدایرکت شود. (آدرس example.com/file.html به آدرس example.net/file.html ریدایرکت شود.)
حالا اگر قصد دارید دامنه قدیمی خودتون رو به دامنه جدید ریدایرکت کنید باید از ریدایرکت نوع ۳۰۱ استفاده کنید. به اینصورت تمام لینک های داخلی دامنه قدیمی به صورت کامل ریدایرکت می شوند. برای این منظور باید مراحل زیر را طی کنید:
- طبق راهنمای فایل htaccess کجاست؟ که در ابتدای همین مقاله ذکر شد، فایل htaccess. را بیابید.
- ویرایشگر این فایل را باز کنید.
- قطعه کد زیر را درون فایل قرار دهید.
RewriteEngine on RewriteCond %{HTTP_HOST} ^example.com [NC,OR] RewriteCond %{HTTP_HOST} ^www.example.com [NC] RewriteRule ^(.*)$ http://example.net/$1 [L,R=301,NC]
دقت داشته باشید قطعه کد بالا دامنه را به همراه تمام لینک های داخلی آن به آدرس های متناظر ریدایرکت خواهد نمود. در صورت تمایل ب ریدایرکت کل سایت به دامنه دلخواه از کد زیر کمک بگیرید. به اینصورت هر لینک از سایت فعلی به آدرس دامنه مد نظر ریدایرکت می شود اما در روش قبلی ریدایرکت لینک های متناظر را داشتیم.
Redirect 301 / http://www.domain.com/
ریدایرکت لینک خاص
ریدایرکت لینک مدنظر به لینک دیگر از همین دامنه (ریدایرکت individual): در برخی مواقع نیاز است فایل، صفحه یا لینک خاصی از دامنه به یک آدرس دیگر در همین دامنه ریدایرکت شود. به عنوان مثال یک صفحه به نام page1 به page2 ریدایرکت شود.
در چنین شرایطی برای ریدایرکت قطعه کد زیر را در فایل htaccess. درج کنید.
Redirect 301 /page1 http://www.domain.com/page2
فرمول قطعه کد بالا به این شکل است که ابتدا نامک صفحه مبدا را درج می کنیم یک فاصله قرار می دهیم سپس لینک دوم را به صورت کامل می نویسیم.
ریدایرکت در وردپرس
با توجه به محبوبیت سیستم مدیریت محتوای وردپرس و برای سهولت کاربران در خصوص موارد مرتبط با ریدایرکت، افزونه های متعددی توسعه داده شده است در خصوص ریدایرکت لینک در وردپرس می توانید از آموزش های زیر کمک بگیرید:
نحوه چگونگی ریدایرکت کردن دامنه ها و ریدایرکت لینک ها به یک دیگر در وردپرس ریدایرکت ۳۰۱ چیست و چه کاربردی دارد؟
نکته: در صورتی که تمایلی به استفاده از افزونه ندارید می توانید از آموزش “ریدایرکت ۳۰۱ چیست” نیز کمک بگیرید.
ریدایرکت سایت به ساب فولدر و بالعکس
برخی مواقع نیاز است که محتوای سایت خود را به محتوای یکی از ساب فولدرها ریدایرکت کنیم در چنین شرایطی می بایست قطعه کد زیر را در فایل htaccess. مبدا درج نمود:
Redirect 301 / http://www.example.com/subfolder/
بر عکس این حالت نیز امکان پذیر است به عنوان مثال تمایل دارید محتوای ساب فولدر به محتوای دامنه دیگری ریدایرکت گردد در چنین حالتی از قطعه کد زیر استفاده می کنیم:
Redirect 301 /subfolder http://www.domain.com/
نکته: به جای www.example.com نام دامنه سایت خود و به جای واژه subfolder نام ساب فولدر مد نظرتان را درج نمایید.
ریدایرکت دامنه قدیم به دامنه جدید
برای ریدایرکت دامنه قدیمی به دامنه جدید نیز این قطعه کد مناسب است:
RewriteEngine on RewriteBase / RewriteRule (.*) http://www.newdomain.com/$1 [R=301,L]
در این آموزش سعی بر این بود که کدهای ریدایرکت سایت مورد بحث و بررسی قرار گیرد. هر نوع ریدایرکت نیازمند کدنویسی خاص خود است. کد ریدایرکت سایت با کد ریدایرکت لینک مد نظر و همچنین ریدایرکت کل سایت با ریدایرکت دامنه کاملا متفاوت می باشد بر همین اساس به منظور پیگشیری از آسیب رسیدن به سئوی سایت می بایست بسیار دقت داشته باشید تا کد اشتباهی در فایل htaccess. درج نشود.