ریدایرکت یعنی هدایت کاربر از یک URL به یک URL دیگر. گاهی وقت ها مجبور هستیم زمانی که کاربر می خواهد یک صفحه از سایت ما را باز کند، او را به یک صفحه دیگر، چه در سایت خود و یا چه در سایت دیگری، هدایت یا همان ریدایرکت (Redirect) کنیم. در این مقاله می خواهیم بدانیم که منظور از ریدایرکت چیست و با انواع آن آشنا شویم و بدانیم که چه زمانی باید از چه نوع ریدایرکتی استفاده کنیم. البته در دوره جامع آموزش سئو نیز به تعریف مفهوم ریدایرکت و پیاده سازی عملی آن در سایت پرداخته ایم و آموزش های آن را داده ایم که پیشنهاد می کنم این دوره راه حتما ببینید.
فهرست عناوین مقاله
ریدایرکت (Redirect) چیست؟
هر صفحه در اینترنت، یک آدرس دارد که در اصل همان URL است. می دانم که برایتان مهم نیست اما URL مخفف Uniform Resource Locator است :). بعضی وقت ها به دلایل مختلفی، صفحه از یک URL به یک URL دیگر جا به جا می شود. ممکن است آن صفحه حذف شده باشد، ممکن است لینک صفحه تغییر کرده باشد، ممکن است دامین تغییر کرده باشد و … . اینجاست که شما به ریدایرکت نیاز دارید تا به طور خودکار کاربر را از طریق مرورگر، از URL قدیمی به URL جدید منتقل کنید.
ریدایرکت می تواند به یک صفحه در سایت ما باشد یا می تواند به هر سایت دیگری انجام شود. اصطلاحا به ریدایرکت URL به یک URL دیگر در یک سایت دیگر، ریدایرکت کراس دامین (cross-domain) گفته می شود که البته بحث اصلی این مطلب این نیست. در این مطلب بیشتر با انواع ریدایرکت و اینکه چه زمانی باید از چه نوع ریدایرکتی استفاده کنیم می پردازیم.
چرا از ریدایرکت استفاده می کنیم؟
همانطور که کمی به آن اشاره کردیم، به دلایل مختلفی از ریدایرکت استفاده می کنیم که در لیست زیر برخی از دلایل رایج را آورده ایم. این نکته را هم مد نظر داشته باشید که گاهی ریدایرکت ما دائمی است، یعنی دیگر قرار نیست ما از آن URL استفاده کنیم، و گاهی اوقات ریدایرکت موقتی است و این را می توانیم به موتور های جستجو مانند گوگل هم بگوییم تا این نکته را مد نظر داشته باشند تا صفحه را از نتایج به طور کامل حذف نکنند.
اما بپردازیم به دلایل استفاده از ریدایرکت:
- حذف یک صفحه یا پست از سایت
- انتقال سایت به یک دامین جدید
- اصلاح URL دامین (حذف www یا اضافه کردن https و …)
- فعال کردن پیوند های یکتا در وردپرس
- ترکیب سایت های مختلف
- تغییر CMS سایت
- تغییر ساختار لینک ها در سایت
- و …
کد وضعیت HTTP چیست؟
تا الان دانستید که ریدایرکت چیست و چرا بعضی وقت ها لازم داریم از آن استفاده کنیم. اما قبل از این که انواع ریدایرکت را معرفی کنیم و آشنا شویم، لازم است با مفهوم کد وضعیت http در مرورگر ها آشنا شویم تا بهتر بتوانیم روش کار ریدایرکت در مرورگر را درک کنیم.
کد وضعیت http یک عدد است که سرور به مرورگر ارسال می کند تا یک درخواست خاصی را اجرا کند یا برگرداند. کد های متخلفی مانند 200، 301، 404، 503 و … وجود دارند که هر کدام نشانگر یک هدف و وضعیت مشخص است. به عنوان مثال کد 404 یا همان خطای 404 Not Found، نشانگر این است که صفحه پیدا نشده است. یا مثلا کد 503 نشانگر این است که مشکلی در سرور وجود دارد. کد 301 یک نیز یک نوع ریدایرکت است که سرور به مرورگر اعلام می کند تا ریدایرکت صفحه به مقصد خاصی انجام شود.
ریدایرکت های سمت سرور (Server-Side Redirects)
انواع مختلف ریدایرکت در سایت وجود دارد که هر کدام باید در جای خودش استفاده شود. در اینجا با این انواع آشنا می شوید و دقت کنید که کاربرد آن ها چیست و چه زمانی از کدام باید استفاده کنید.
ریدایرکت 301: به طور دائمی ریدایرکت شد
ریدایرکت 301 یکی از رایج ترین و تقریبا پرکاربرد ترین ریدایرکت ها است و باید زمانی استفاده کنید که بخواهید یک URL را به طور دائمی و برای همیشه به یک URL دیگر منتقل کنید. مثلا زمانی که یک صفحه از سایت را حذف کرده اند و به یک صفحه دیگر انتقال داده اید. یا مثلا دامین عوض کرده اید، یا ساختار لینک سایت خود را تغییر داده اید و … .
این کد ریدایرکت به ربات های موتور های جستجو اعلام می کند که این URL دیگر وجود ندارد و نباید ایندکس شود و به جای آن آدرس جدیدی که ریدایرکت شده است، جایگزین شود. به این صورت اعتبار صفحه قبلی از نظر گوگل، تا حد زیادی به صفحه جدید که ریدایرکت شده است منتقل می شود.
به دلیل اینکه بعد از ریدایرکت دیگر URL قدیمی در دسترس نیست (چون ریدایرکت می شود)، امکان استفاده مجدد را ندارید. اگر به طور موقت می خواهید یک صفحه را به صفحه دیگر ریدایرکت کنید، باید از کد های ریدایرکت موقت که در ادامه می گوییم استفاده کنید.
ریدایرکت 301 تا حد زیادی اعتبار صفحه قدیمی نزد گوگل را به صفحه جدید منتقل می کند. به همین دلیل از نظر سئو نیز لطمه زیادی به سایت نمی زند. در مورد این که چگونه ریدایرکت 301 را تنظیم کنیم، در یک مقاله جداگانه در سایت در مورد این نوع ریدایرکت صحبت کرده ایم و آموزش های لازم را داده ایم که می توانید این مقاله را بخوانید. اما به طور خلاصه اگر وردپرسی هستید و افزونه Yoast SEO را نصب دارید، بخشی را برای پیاده سازی انواع ریدایرکت ها دارد. همچنین از طریق فایل htaccess نیز این کار قابل انجام است:
<IfModule mod_rewrite.c>
RewriteEngine On
RedirectMatch 301 /old-page/ /new-page/
</IfModule>
در قسمت old-page باید URL قدیمی و در قسمت new-page باید URL جدید را وارد کنید. جزئیات بیشتر در مورد کد ریدایرکت سایت، آموزش ریدایرکت 301 را در مقاله مخصوص به خود بخوانید.
ریدایرکت 302: یافت شد اما موقتا ریدایرکت می شود
ریدایرکت 302 نیز یک نوع ریدایرکت دیگر است که معمولا به عنوان ریدایرکت موقتی استفاده می شود. کد 302 به این معناست که به طور موقت این URL به یک آدرس دیگر منتقل شده است اما دائمی نیست و دوباره سر جای خودش بر می گردد.
به دلیل موقتی بودن این ریدایرکت، اعتبار صفحه نیز به صفحه دیگر منتقل نمی شود. پس نباید برای ریدایرکت های دائمی یا انتقال دامین استفاده شود تا اعتبار قدیمی سایت و URL ما از دست نرود. پیاده سازی این نوع ریدایرکت نیز از طریق افزونه Yoast SEO و فایل Htaccess قابل انجام است.
ریدایرکت 307: موقتا ریدایرکت شد
کد 307 نیز به معنای ریدایرکت موقتی است. در کد قبلی یعنی 302 هم ریدایرکت موقتی انجام می شد اما در کد 307 کمی فرایند ریدایرکت بهبود پیدا کرده است و ربات های موتور های جستجو بهتر با این کد برخورد می کنند.
از آنجا که این ریدایرکت موقتی است، همچنان باید در جا های مختلف از همان URL اصلی استفاده کنید تا بعدا بتوانید ریدایرکت صفحه را بردارید و سایت شما به درستی به فعالت خود ادامه دهد. پیاده سازی این نوع ریدایرکت نیز از طریق افزونه Yoast SEO و فایل htaccess قابل انجام است.
ریدایرکت 308: تا حدی مشابه ریدایرکت 301
این نوع ریدایرکت به ندرت استفاده می شود و خیلی رایج نیست. کد ریدایرکت 308 به این معناست که به ربات های گوگل و سایر موتور های جستجو اعلام می کند که ریدایرکت را انجام دهد و دیگر URL قدیمی را در نظر نگیرد. تا حد زیادی مشابه ریدایرکت 301 است اما مرورگر ها این ریدایرکت را سریع تر و قوی تر کش می کنند.
ریدایرکت های سمت کاربر (Client-Side Redirects)
منظور از ریدایرکت سمت کاربر، ریدایرکتی است که با یک سری کد در مرورگر کاربر اجرا می شود و ریدایرکت انجام می شود. پس برای اجرای این نو ریدایرکت، ابتدا باید کد هایی برای کاربر اجرا ارسال و اجرا شود و بعد ریدایرکت انجام شود. البته این نوع ریدایرکت به دلیل فرایند متفاوت آن، کمی کند تر است.
دو نوع ریدایرکت سمت کاربر داریم. یکی از آن ها ریدایرکت meta refresh است که در اصل صفحه را به یک URL دیگر رفرش می کند. به این دلیل می گوییم رفرش که می تواند خود صفحه یا یک URL جدید را اجرا کند. نوع دیگر استفاده از کد های جاوا اسکریپت است که URL را به یک URL دیگر تغییر می دهد.
معمولا این نوع ریدایرکت ها از نظر سئو، اعتبار را منتقل نمی کنند و برای انتقال اعتبار صفحه، باید از ریدایرکت 301 استفاده شود.
ریدایرکتی که ریدایرکت نیست!
تا اینجا با انواع ریدایرکت آشنا شدید. در این بخش می خواهیم در مورد موضوعی صحبت کنیم که در اصل ریدایرکت نیستند و کاربر را به URL دیگری منتقل نمی کند اما از جنبه هایی می تواند حکم ریدایرکت صفحه را داشته باشد. یا بهتر بگویم، ریدایرکت به بن بست!
به عنوان مثال کد 410، که تا حد زیادی مشابه کد 404 است، نشان دهنده این است که صفحه حذف شده است اما ریدایرکتی انجام نمی شود. معمولا از کد 410 برای اعلام حذف دائمی صفحه به ربات ها استفاده می شود.
نوع دیگر، کد 451 است که نشان دهنده این است که محتوای صفحه به دلایلی مختلف مانند دلایل قانونی، حذف شده است. مثلا اگر توسط قانون کشور مجبور به حذف صفحه باشید و بخواهید دلیل آن را به گوگل یا سایر ربات های موتور های جستجو هم بگویید، می توانید از این کد 451 برای صفحه خود استفاده کنید.
چگونه ریدایرکت کنیم؟
برای ریدایرکت لینک در وردپرس و اعمال دستور ریدایرکت، افزونه های مختلفی وجود دارد. معمولا بیشتر کاربران، افزونه یوست سئو یا یک افزونه مشابه را نصب دارند. این افزونه ها در منو خود بخشی را برای ایجاد ریدایرکت دارند. مثلا افزونه Yoast SEO به شما این امکان را می دهد که انواع ریدایرکت ها را بر اساس نیاز خود ایجاد کنید. افزونه های مخصوص ریدایرکت دیگری نیز مانند افزونه Redirection وجود دارد که عده ای از این افزونه نیز استفاده می کنند.
اما اگر وردپرسی نیستید و یک CMS دیگر دارید، احتمالا افزونه ها و ماژول های اختصاصی برای آن ها وجود داشته باشد که باید نصب کنید.
اما اگر CMS شما اختصاصی است و چنین بخشی هم ندارد، باید از طریق فایل htaccess استفاده کنید و کد های ریدایرکت را در آن فایل قرار دهید تا عمل کنند. در مقاله ریدایرکت 301 با بخشی از این روش آشنا شدیم.
جمع بندی
در این مقاله یاد گرفتیم که ریدایرکت چیست. گفتیم انتقال کاربر از یک URL به یک URL دیگر، ریدایرکت گفته می شود. ریدایرکت به دلایل مختلفی می تواند انجام شود و بر اساس آن دلیل و نیاز، نوع ریدایرکت نیز فرق دارد که در این مقاله با انواع و کاربرد های آن آشنا شدیم. همچنین گفتیم که برای ایجاد ریدایرکت در وردپرس، می توانید از افزونه Yoast SEO و یا از فایل htaccess استفاده کنید.
در آخر چند پیشنهاد ویژه هم برای شما داریم. شما می توانید کتاب آموزش سئو را به صورت رایگان از سایت دانلود کنید. همچنین یک چک لیست سئو سایت آماده کرده ایم که به بهینه سازی سئو سایت شما کمک می کند. همچنین اگر هدف شما این است که سئو را کامل یاد بگیرید، پیشنهاد ما دوره جامع آموزش سئو است.
امیدواریم این مقاله برای شما مفید بوده باشد و اطلاعات لازم را برای آشنایی بیشتر با ریدایرکت و انواع آن، به دست آورده باشید. اگر سوال یا نظری دارید، در بخش نظرات همین مطلب، منتظر شما هستیم.
منابع: