ریدایرکت 301 با فایل htaccess
بعضی اوقات به دلایل مختلفی ممکن است نیاز به ریدایرکت آدرس دامنه یا فایل های خود داشته باشید. ریدایرکت 301 یکی از انواع تغییر مسیر است که با استفاده از روش های مانند فایل htaccess و ریدایرکت سی پنل می توانید به آسانی آن را انجام دهید. اگر سایت شما هم با چالش ریدایرکت روبرو شده است این مقاله را از دست ندهید.
ریدایرکت یا تغییر مسیر، کاربر را به آدرس دیگری منتقل و هدایت می کند. یکی از انواع ریدایرکت، تغییر مسیر 301 (دائمی) بوده که به موتورهای جست و جو اطلاع می دهد آدرس صفحه تغییر پیدا کرده است. انجام Redirect برای هدایت ترافیک صفحه موجود است و باید با رعایت اصول سئو انجام شود. در مقاله آموزش ریدایرکت 301 نحوه انجام آن را با استفاده از افرونه یواست سئو را شرح دادیم. در این مقاله می خواهیم آموزش ریدایرکت با htaccess را به صورت مستقیم و از طریق Cpanel ارائه دهیم.
چه زمانی باید ریدایرکت 301 را برای دامنه انجام دهیم؟
پس از خرید دامنه و اتصال به هاست، نام دامنه شما باید با یک ادرس شناسایی شود. یک نسخه یکتا با www یا بدون www و https. بعنوان مثال اگر کاربر من در مرورگر ادرس https://domain.com یا https://www.domain.com یا http://domain.com را وارد کرد همگی به یک ادرس ریدایرکت شوند. در واقع تمامی آدرس های سایت به یک ادرس ریدایرکت شوند و همان ادرس در سرچ کنسول و انالیتیکس و سایر ابزارها استفاده شود. در این بخش دلایل استفاده از این نوع تغییر مسیر را آورده ایم.
- تغییر مسیر فایل های شخصی روی همان دامنه: زمانی که مکان یک فایل قدیمی تغییر کرده است و یا اطلاعات آن در یک فایل جدید وجود دارد.
- حذف صفحه ای از وب سایت: زمانی که یک صفحه از وب سایت به هر دلیلی حذف شده باشد برای رفع خطای 404 انجام ریدایرکت ضروری است.
- ریدایرکت یک دامنه قدیمی به دامنه جدید: اگر دامنه وب سایت شما به دامنه جدید منتقل شده است و بخواهید همه آدرس های قدیمی به آدرس جدید منتقل شوند. ریدایرکت 301 یکی از مراحل انتقال سایت وردپرس به دامنه جدید است.
- اجبار به استفاده از نسخه WWW و یا نسخه بدون WWW سایت: کاربران می توانند سایت شما را با و بدون WWW باز کنند یا ارجاع داده و لینک دهند. اما اگر بخواهید می توانید یکی از این حالت ها را به عنوان نسخه ای که سایت نمایش می دهد تنظیم کنید.
- فایل ها با پسوند خاص را تغییر مسیر بدهید: اگر فایل های شما قبلا دارای پسوند .php هستند و اکنون آنها را به پسوند .html تبدیل کرده اید، با ریدایرکت 301 لینک ها را به روز کنید تا بتوانند از پسوند جدید استفاده کنند.
- تغییر یا جایگزینی پیوندهای یکتا: برای تغییر ساختار لینک و پیوندهای یکتا می توانید از ریدایرکت 301 استفاده کنید.
در ادامه به شرح دو روش مرسوم ریدایرکت می پردازیم.
ریدایرکت دامنه با htaccess
قبلا گفتیم که فایل htaccess چیست، در کجا قرار دارد و کاربرد آن چیست. در این بخش می خواهیم نحوه ریدایرکت با htaccess را توضیح دهیم.
گام اول: ابتدا وارد سی پنل شده و Filemanager را بازکنید.
گام دوم: در Filemanager > Setting (تنظیمات در سمت راست و بالای فایل منیجر قرار دارد) بررسی کنید که تیک گزینه Show Hidden Files (dotfiles) فعال باشد.
گام سوم: در این بخش از ریدایرکت با htaccess در قسمت Document root for نام دامنه موردنظرتان را انتخاب کنید.
گام چهارم: بر روی htaccess دامنه مورد نظر کلیک راست کرده و گزینه edit را بزنید.
نکته اگر هنوز فایل htaccess را پیدا نکرده اید مقاله یافتن فایل htaccess را بخوانید.
گام پنچم: سپس فایل htaccess را بر اساس نوع ریدایرکت 301 با دستورات متداول ریدایرکت زیر در htaccess ویرایش کنید.
✔️ ریدایرکت فایل ها با htaccess
برای ریدایرکت فایل های شخصی مانند yourdomain.com /oldfile.htm به newfile.htm می توانید از ریدایرکت 301 استفاده کنید.
Redirect 301 /oldfile.htm /newfile.htm
برای ریدایرکت یک فایل خاص به دامنه های دیگر برای مثال yourdomain.com/oldfile.htm به yourdomain.ir/newfile.htm از کد زیر استفاده کنید.
Redirect 301 /oldfile.htm https://yourdomain.ir/newfile.htm
✔️ ریدایرکت کل دامنه با htaccess
اگر دامنه خود را تغییر دادید برای مثال از yourdomain.com به yourdomain.ir و دیگر تمایلی به استفاده از دامنه قدیمی ندارید، برای استفاده از دامنه جدید، ریدایرکت 301 را برای کل دامنه تنظیم کنید. با این روش همه لینک های قدیمی به دامنه جدید یعنی yourdomain.ir منتقل شوند.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www.yourdomain.com [NC]
RewriteRule ^(.*)$ https://yourdomain.ir/$1 [L,R=301,NC]
✔️ ریدایرکت دامنه به نسخه www
گوگل دو سایت yourdomain.com و www.yourdomain.com را به عنوان دو دامنه مجزا در نظر می گیرد. شما با ریدایرکت با htaccess و اجبار به استفاده از نسخه WWW می توانید مشخص کنید کدام نسخه توسط موتورهای جست و جو نمایش داده شود. در واقع شما نام دامنه ای که می خواهید در هنگام باز شدن سایت نمایش داده شود را تعیین می کنید. اگر افراد به سایت شما به عنوان yourdomain.com لینک داده اند اما می خواهید بازدیدکنندگان به www.yourdomain.com ختم شوند و به او نمایش داده شود می توانید با کد زیر اجبار به استفاده از نسخه www را انجام دهید.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^yourdomain.com [NC]
RewriteRule ^(.*)$ https://www.yourdomain.com/$1 [L,R=301,NC]}
✔️ ریدایرکت دامنه به نسخه بدون www
برای اینکه بخواهید بازدیدکنندگان با زدن لینک هایی که به سایت شما داده شده اند نسخه بدون www را مشاهده کنند با ریدایرکت 301 می توانید آن را یک اجبار کنید.
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.yourdomain.com [NC]
RewriteRule ^(.*)$ https://yourdomain.com/$1 [L,R=301,NC]
✔️ ریدایرکت فایل ها تغییر پسوند داده شده با htaccess
اگر نوع فایل تغییر کرده و میخواهید همه لینک هایی که به فایل قبلی انجام شده اند را اصلاح کنید باید از دستور ریدایرکت 301 زیر استفاده کنید. مانند example.com/file.php به example.com/file.htm.
RewriteEngine On
RewriteCond %{REQUEST_URI} .php$
RewriteRule ^(.*).php$ /$1.htm [R=301,L]}
ریدایرکت http به https با htaccess
اگر از حالت https استفاده می کنید و می خواهید همه آدرس های سایت شما با https نمایش داده شوند، با افزودن دستورات زیر در فایل htaccess این امکان را فراهم کنید.
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
ریدایرکت مباحث متنوعی دارد که برای داشتن یک سایت بهینه بهتر است آنها را بدانید.
مراحل تنظیمات ریدایرکت 301 در سی پنل
هاست cpanel ابزاری دارد که شما می توانید با انجام تنظیمات ریدایرکت در سی پنل بدون تغییر دستی کدهای htaccess به صورت خودکار کدهای لازم برای ریدایرکت را به این فایل اضافه کنید. برای تنظیم ریدایرکت مراحل زیر را مطابق تصویر انجام دهید.
1. ابتدا وارد سی پنل شوید و از بخش Domain بر روی گزینه Redirect کلیک کنید.
2. سپس در بخش type ریدایرکت 301 (دائمی) یا 302 (موقتی) را انتخاب کنید.
3. از منوی کشویی بعدی نام دامنه ای که می خواهید ریدایرکت برای آن انجام شود را انتخاب کنید.
4. در بخش بعدی (فیلد /) نام فایل را در صورت نیاز وارد کنید.
5. در بخش Redirects to آدرسی را وارد کنید که می خواهید به آن ریدایرکت شود.
6. در این بخش گزینه های ریدایرکت با www، ریدایرکت با و بدون www، ریدایرکت بدون www را می توانید انتخاب کنید.
7. گزینه Wild Card Redirect نام فایل یا پوشه را بعد از ریدایرکت در انتخاب url اضافه می کند.
8. بعد از تکمیل اطلاعات دکمه add را بزنید.
بعد از مطالعه راهکارهای ارائه شده در این مقاله شما می توانید ریدایرکت با htaccess و از طریق سی پنل را انجام دهید. اگر نکته ای در این رابطه وجود دارد می توانید در دیدگاه ها نظرات خود را با ما در میان بگذارید.
درود بر شما
برای تغییر پیوندهای یکتای سایتم از /%postname%/ به /%postname%-1/ نیاز به کد ریدایرکت 301 دارم و نمیخوام از افزونه استفاده کنم
از چه کدی باید استفاده کنم؟