ریدایرکت (redirect) معرفی انواع 301 و 302 و نحوه انجام

ریدایرکت (redirect) معرفی انواع 301 و 302 و نحوه انجام

ریدایرکت به معنای انتقال آدرسی به آدرسی دیگر است انواع مختلفی از redirect وجود دارد و بنابر نوع نیاز خود در سایت و رعایت اصول سئو باید انتخاب کنید گاهی به هنگام سرچ یک صفحه در گوگل با ارور 404 مواجه شوید. این ارور به این معنی است که صفحه مورد نظر وجود ندارد. چنانچه شما صاحب یک سایت هستید یا روی سئو آن سایت کار می کنید باید با ریدایرکت (redirect)، کاربرد آن و نحوه انجام آن آشنایی داشته باشید تا در صورت نیاز از آن استفاده کنید. در ادامه ابتدا به سوال ریدایرکت (redirect) چیست پاسخ خواهیم داد و سپس به اهمیت و کاربرد آن می‌پردازیم. همراه ما باشید تا علاوه بر آن با نحوه انجام ریدایرکت نیز آشنا شوید.

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

ریدایرکت (redirect) می‌تواند مناسب‌ترین روش برای انتقال یک آدرس یا url به آدرس دیگر باشد. ریدایرکت به معنی تغییر مسیر و راهنمایی به یک مکان جدید است.

زمان مطالعه: 3 دقیقه
بازدید: 2996
پرسش و پاسخ: 8

ریدایرکت (redirect) چیست؟

عبارت ریدایرکت (redirect) به معنای انتقال آدرس است. به طور کلی می‌توان گفت هرگاه بخواهیم بازدید کنندگان یک سایت را به صفحه دیگر انتقال دهیم از ریدایرکت استفاده می‌کنیم. گاهی نیز ممکن است آدرس یک یا تمامی صفحات یک سایت تغییر کند و ما با عمل ریدایرکت مخاطبان را به صفحه اصلی هدایت می‌کنیم. در چنین صورتی بازدید کننده دیگر با ارور 404 مواجه نخواهد شد. اما هدایت به سایت جدید چگونه انجام می‌شود؟ جالب است بدانید که موتور جستجوگر گوگل اکثر مخاطبان را به سایت قدیمی شما ارجاع می‌دهد. علاوه بر آن ممکن است افرادی آدرس سایت شما را یادداشت کرده باشند تا در صورت نیاز به آن مراجعه کنند. حال اگر شما URL سایت خود را تغییر داده باشید بسیاری از مخاطبان خود را از دست می‌دهید. اما اگر از ریدایرکت استفاده کرده باشید، پس از مراجعه افراد به سایت قدیمی به صورت اتوماتیک به صفحه جدید شما ارجاع داده می‌شوند.

کاربرد ریدایرکت ها چیست؟

  1. ریدایرکت در صورت تغییر دامنه
  2. ریدایرکت برای تغییر ساختار آدرس دهی صفحات یک سایت
  3. ریدایرکت ساب کتگوری به ساب دامین
  4. ریدایرکت یک آدرس منحصر به فرد روی آدرس دیگر
  5. تغییر دامنه های چندگانه به یک دامنه ی واحد

انواع ریدایرکت

انواع مختلفی از ریدایرکت ها در پروتکل http وجود دارد به صورت لیست ذیل مشاهده میکنید :

  1. 301 دائمی
  2. 302 موقت
  3. 307 موقت
  4. 304
  5. regex
  6. 410
  7. 451
  8. ریدایرکت متای رفرش (meta refresh)

HTTPS چیست؟

ریدایرکت دائمی 301

همانگونه که از نامش پیداست ،301 یک ریدایرکت (redirect) دائمی است و شما فقط زمانی باید از آن استفاده کنید که دیگر قصد بازگشت به URL  قدیمی خود را ندارید. زیرا در صورت استفاده از آن تمام اطلاعات URL قدیمی با حفظ رنک به URL جدید منتقل می‌شود. ریدایرکت 301 تمام بازدید کنندگان قدیمی را به طور اتوماتیک و دائم به آدرس جدید منتقل می‌کند. یکی از متداول ترین ریدایرکت ها است و باید هنگامی از آن استفاده کنید که  بطور دائمی می‌خواهید یک صفحه را حذف یا منتقل کنید و یا زمانی که در ساختار پیوند یکتا صفحات سایت تغییری ایجاد کنید. کد 301  به ربات های موتور جستجو می گوید صفحه ای که به دنبال آن هستند، در این آدرس در دسترس نیست، و دیگر نیازی به ایندکس شدن وجود ندارد.

ریدایرکت دائمی 301

آموزش ساخت ریدایرکت 301

یکی از روش های مرسوم ساخت ریدایرکت 301، ویرایش پرونده htaccess سرور است که این روش در سرورهای آپاچی Apache  قابل استفاده است.

وب سرور Nginx روش منحصر به فرد خود را برای تعریف ریدایرکت ها در پیکر بندی سرور دارد. در این روش هر بار که بخواهید یک ریدایرکت جدید اضافه باید ابتدا وارد سرور FTP سایت تان شوید، فایل ها را ویرایش کنید و در آخر آن ها را مجددا بار گذاری کنید. این روش نیاز به دانش گسترده ای در زمینه ی مدیریت سیستم دارد، به همین دلیل استفاده از آن زیاد مرسوم نیست.

یکی از دلایل اصلی این نوع ریدایرکت این است که به طور مثال وب سایتی با دو آدرس  www.example.com و example.com  در دسترس می باشد. و از آنجا یی که گوگل محتوای کپی را جریمه می کند، باید یکی از دو آدرس در دسترس باشد. هرچند که ممکن است موتور های جستجو سایت را در هر دو آدرس ایندکس کرده باشند ولی بهتر است سایت فقط از طریق www یا بدون www در دسترس باشد. فایل اصلی .htaccess در پوشه ی Public_Html در بخش File Manager هاست قرار دارد. در ادامه ریدایرکت از طریق htaccess آموزش داده می‌شود.

ریدایرکت com به www.example.com

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

ریدایرکت example.com به example.com

RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule ^/?$ "http\:\/\/example\.com\/" [R=301,L]

ریدایرکت به com/index.php

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example.com$
RewriteRule ^$ http://example.com/index.php [L,R=301]

ایجاد ریدایرکت 301 برای تمامی درخواست های http که روی دامنه ی قدیم می باشند:

مثال 1 – انتقال از com به www.newexample.com

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

کد فوق در مواقعی مفید می باشد که شما از www.newexample.com بعنوان دامنه ی جدید استفاده کنید (که قبلا توضیح داده شد امکان تعریف دامنه با www یا بدون www وجود دارد) – اگر بیاد نیارید، مثال 2 را مشاهده کنید.

مثال 2 – ریدایرکت از com به newexample.com

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

برای انجام مراحل ریدایرکت فوق ابتدا باید مراحل زیر را طی کنید:

  1. وارد کنترل پنل هاست خود شوید.
  2. بعد از ورود به هاست، در بالای صفحه سمت راست روی علامت چرخ دنده یا همان تنظیمات هاست کلیک کنید.
  3. گزینه Show Hidden Files را در حالت فعال قرار دهید.
  4. به بخش File Manager هاست مراجعه کنید.
  5. در مسیر دامنه مقصد (دامنه ای که ریدایرکت به آن انجام می شود) فایل htaccess. را بیابید.
  6. روی فایل htaccess. کلیک راست کرده و گزینه Edit را انتخاب کنید. تا به بخش ویرایشگر آن هدایت شوید. تا در مراحل بعدی بتوانید کدهای ریدایرکت را به آن اضافه نمایید.

عمیلات ریدایرکت در هاست

ممکن است فایل htaccess. در هاستتان موجود نباشد، در چنین حالتی  می توانید به صورت دستی آن را ایجاد کنید. برای این منظور:

  1. در نوار ابزار هاستتان روی گزینه New File کلیک کنید. تا فایل جدیدی ایجاد شود.
  2. نام آن را htaccess. قرار دهید.
  3. باید این فایل را در مسیر public_html  قرار دهید.

مطالعه کامل و جامع پیرامون آموزش htaccess

ریدایرکت 301 با PHP

برای ساخت ریدایرکت 301در وردپرس دو روش وجود دارد:

  1. با تغییر کد های هدر صفحه آن را ریدایرکت کنید.
  2. از امکان تابع ساخته شده وردپرس استفاده کنید.

چگونه در افزونه وردپرس Yoast SEO ریدایرکت 301 ایجاد کنیم؟

چنانچه سایت مورد نظر شما با وردپرس راه اندازی شده، بهتر است که نصب افزونه قدرتمند Redirection  را انجام دهید. پس از نصب در منوی "ابزارها" بر روی منوی Redirection  کلیک کنید تا به محیط پیکربندی این افزونه وارد شوید. در بالای صفحه ۷ تب متفاوت وجود دارد. در تب Redirects می توانید به سادگی یکی از لینک های سایت مورد نظر را بر دیگری ریدایرکت کنید. برای اینجاد این کار در بخش Add new redirection در کادر Source URL آدرس لینک قدیمی و در کادر Target URL آدرس لینک جدید، که می خواهید کاربران به آن منتقل شوند را بنویسید و بر روی دکمه آبی رنگ Add Redirection کلیک کنید. چنانچه قصد تغییر کد ریدایرکت 301، 302 و یا 307 را دارید می‌توانید با استفاده از گزینه edit  این تغییر را ایجاد کنید.

چگونه در افزونه وردپرس Yoast SEO ریدایرکت 301 ایجاد کنیم؟

بنابراین در نسخه Premium افزونه یواست این کار به سادگی انجام پذیر است. افزونه سئو  بدون به وجود آمدن ارور 404 که نشان دهنده حذف صفحه است به شما کمک می کند هر زمان که خواستید آدرس یک پست، صفحه یا طبقه بندی های سایت را تغییر دهید. برای این کار کافی است از منوی سئو، گزینه تغییر مسیر را انتخاب کنید. این افزونه به شما اجازه می دهد هر زمان که خواستید ریدایرکت‌های صفحات را به آسانی ویرایش  ویا حذف کنید. و زمانی که در حال ساخت یک ریدایرکت (redirect) حلقه ای Redirect Loop هستید به شما هشدار می‌دهد.

ریدایرکت 302

ریدایرکت 302 را معمولا با عنوان ریدایرکت مبهم نیز می‌شناسند. ریدایرکت 302 شباهت بسیاری به ریدایرکت 301 دارد. با این تفاوت که این یک ریدایرکت دائمی نیست. در گذشته تفاوت دیگری نیز با کد 301 داشت و آن عدم انتقال رنک بود. به طوری که ریدایرکت 301 با کاهش 15 درصدی رنک همراه بود اما ریدایرکت 302 کاهش 100 درصدی را به همراه داشت. اما طبق قوانین جدید و قدرت سئو ریدایرکت 301 و 302 بدون کاهش رنک ایجاد می‌شوند. و تفاوت عمده همان موقت و دائمی بودن ریدایرکت است. هنگامی که از ریدایرکت 302 استفاده می‌کنید موتورهای جستجوگر این پیقام را دریافت می‌کنند که محتوایی که به دنبال آن هستید وجود دارد اما موقتا در جای دیگری است. چنانچه قصد دارید بازدیدکنندگان یک صفحه خاص را، به آدرس دیگری هدایت کنید و در آینده از آدرس قدیمی مجددا استفاده کنید، از ریدایرکت 302 استفاده کنید.

اگر تسلط کافی به سیستم مدیریت وب‌سایت خود را دارید می‌توانید با انجام مراحل زیر به‌راحتی صفحات خود را ریدایرکت کنید.

ریدایرکت در وب‌سایت‌های بر روی سرور یونیکس یا آپاچی

  1. یک کپی از فایل htaccess. موجود در ریشه سایت خود تهیه کرده و آن را در پوشه Backup ذخیره کنید تا در صورت بروز خطا امکان بازیابی شرایط اولیه وجود داشته باشد.
  2. فایل .htaccess را برنامه Notepad++ (یک برنامه ادیتور متن رایگان) باز کرده و در پایین کدهای موجود با توجه به مثال زیر ریدایرکت را انجام دهید (به فاصله‌ها دقت کنید).

redirect 302 /OldPage.html http://xyzname.com/NewPage.html

  1. فایل ویرایش شده را ذخیره و بر روی سرور وب‌سایت خود بارگذاری کنید و در انتها با مراجعه به آدرس قدیمی (xyzname.com/OldPage.html) از ریدایرکت صحیح به آدرس جدید (NewPage.html) اطمینان حاصل کنید.

ریدایرکت وب‌سایت‌های بر روی سرورهای ویندوز

اگر از سرورهای ویندوز استفاده می‌کنید انجام ریدایرکت 302 پر دردسر است. زیرا یک صفحه باید در آدرس قدیمی باقی بماند تا کاربران به آدرس جدید هدایت شوند. برای انجام ریدایرکت 302 بر روی سرور ویندوز مراحل زیر را باید طی کنید.

  1. یک صفحه در موقعیت آدرس قدیمی وب‌سایت قرار دهید (http://xyzname.com/OldPage.asp).
  2. اگر یک وب‌سایت ASP استاندارد را اجرا می‌کنید، کد زیر را در بالای تگ <html> یا <!DOCTYPE> کپی کنید:
<%@ Language=VBScript %>
<%
Response.Status=”302 Found”
Response.AddHeader “Location”,”http://xyzname.com/NewPage.asp”
%>
  1. همچنین اگر یک وب‌سایت Net. را اجرا می‌کنید، کد زیر را در بالای تگ <html>  یا <!DOCTYPE> کپی کنید:
<script runat=”server”>
private void Page_Load(object sender, System.EventArgs e)
{
Response.Status = “302 Found”;
Response.AddHeader(“Location”,”http://xyzname.com/NewPage.asp”);
}
</script>
  1. در انتها با مراجعه به آدرس قدیمی (xyzname.com/OldPage.html) از ریدایرکت صحیح به آدرس جدید (NewPage.html) اطمینان حاصل کنید.

افزونه رنک مث (Rank math) نصب و مقایسه با یوآست سئو

ریدایرکت موقت 307

با ظهور HTTP 1.1، ریدایرکت 307 به عنوان ریدایرکت موقت و معتبر تر جایگزین ریدایرکت 302 شد. با استفاده از این ریدایرکت موتورهای جستجوگر این پیغام را دریافت می‌کنند که صفحه‌ای که به دنبال آن هستید موقتا به آدرس دیگری منتقل شده‌ است اما پس از مدتی  بازمی‌گردد. به همین دلیل از این ریدایرکت  فقط زمانی استفاده کنید که مطمئن هستید تغییر مسیر صفحه به صورت موقتی است و در آینده به URL قبلی نیاز دارید.

ریدایرکت 304

در واقع یک کد HTTP است که گاها نیز نوعی ریدایرکت خوانده می شود. این کد به مرورگر شما این پیغام رو میدهد که ” منبعی که به دنبال آن هستید از زمانی که آخرین بار به آن سر زده اید تغییری نکرده است”

ریدایرکت های REGEX

هنگامی که قصد دارید برای URL های سایت تان ریدایرکت های پیچیده بسازید، ریدایرکت REGEX بهترین انتخاب است. با استفاده از ریدایرکت REGEX می توانید صفحاتی را که دارای کلمات‌ کلیدی مشابه هستند را به صورت گروهی به آدرس جدید هدایت کنید. استفاده از این روش در پروژه های بزرگ سئو مفید و کاربردی است. اما باید بدانید در صورتی قادر به استفاده از این نوع ریدایرکت هستید که  در این زمینه اطلاعات کافی داشته  و حرفه ای باشید، زیرا در غیر این صورت به راحتی می تواند برای سایت شما مشکل ایجاد کند.

یادگیری عبارات با قاعده: Regex چیست؟

ریدایرکت 410

برای جلو گیری از نمایش کد خطای 404 که برای بسیاری نامطلوب است و موجب سردرگرمی کاربران می‌شود، از ریدایرکت 410 استفاده می‌کنند.  این ریدایرکت (redirect) به کاربر و موتور های جستجو می‌گوید که این صفحه از سایت حذف شده است. با این روش ربات های موتور جستجو متوجه می‌شوند که این صفحه دیگر وجود ندارد ، به همین دلیل آن را از نتایج حذف میکنند.

ریدایرکت متای رفرش (meta refresh) :

در این روش به جای آن که تغییرات در سرور وب سایت شما به وجود بیایند در سمت کاربر اتفاق می افتند. به طور معمول Meta Refresh ها سرعت پایینی دارند و برای سئو توصیه نمی شوند.

ریدایرکت 451

Meta Refresh نوعی از ریدایرکت است که به جای اجرا در سطح سرور، در سطح صفحه انجام می شود. این نوع ریدایرکت ها را ممکن است در صفحات انجمن های گفتگو و پس از ویرایش اطلاعات خود مشاهده کرده باشید. آنها معمولا به شکل صفحه موقت 5 ثانیه ای و با پیغام "در صورتی که تا چند ثانیه دیگر به صفحه مورد نظر منتقل نشدید، ابنجا را کلیک کنید" ظاهر می شوند. این ریدایرکت (redirect)  تا حدودی اعتبار صفحه را منتقل می کند، اما به دلیل ریدایرکت کُند بودن این نوع ریدایرکت در تکنیک‌های سئوی سایت پیشنهاد نمی شود.

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

  • کد 404: دلیل نمایش این کد حذف و یا پیدا نشدن صفحه‌ای‌ است که به دنبال آن هستید.
  • کد 503: سرور سایت به صورت موقت آفلاین است و کاربر نمی‌تواند به آن دسترسی داشته باشد. نمایش این کد دلایل مختلفی مانند آپدیت یا گرفتن بک آپ و یا اشتباه بودن پیکر بندی سرور DNS سایت رخ میدهد.

اهمیت ریدایرکت و تاثیر آن بر روی سئو

ریدایرکت 301 بیشترین اهمیت را برای متخصص سئو دارد. زیرا همانگونه که اشاره کردیم تمامی اعتبار و رتبه صفحه قدیمی به صفحه جدید منتقل می‌شود و با کاهش رنک وبسایت مواجه نخواهید شد. سئوکاران زمان زیادی را صرف توسعه و بهبود یک سایت می‌کنند به همین دلیل حفظ اعتبار و مخاطبان سایت برای آن‌ها بسیار اهمیت دارد و خوشبختانه ریدایرکت 301 این امکان را برای آنان فراهم کرده است که بدون کاهش رنک تمامی اطلاعات URL قدیمی را به URL جدید منتقل کنند.

ریدایرکت (redirect) چه زمانی کاربرد دارد؟

  • حذف یک مقاله یا صفحه از سایت
  • انتقال سایت به دامنه ای جدید
  • حذف www در دامنه
  • فعال سازی پیوند یکتا permalink در وردپرس
  • ادغام سایت ها
  • تغییر  CMS
  •  درحال تغییر یک سیستم به سیستم دیگر بوده به همین دلیل URL را تغییر می‌دهید.
  • هنگامی که قصد ادغام کردن محتوای چندین صفحه در یک صفحه را دارید..
  • یک صفحه یا پست را حذف کرده اید و محتوای مشابه در جای دیگر موجود است.

ریدایرکت از طریق سرور یا با استفاده از پلاگین؟

گاهی برای شما سوال هست که ریدایرکت با هر نوعی که وجود دارد از سمت سرور با استفاده از htaccess باشد و یا با استفاده از پلاگین های موجود در سایت مثلا سایت های وردپرسی و ...

در جواب باید بگم عملیات ریدایرکت در سمت سرور با استفاده از htacces انجام می شود و درست نیست بیش از حد تعداد کدهای زیادی در این فایل قرار بدید (مشکل کدنویسی تمیز)

و بعد اگر نیاز باشد بدانید ریدایرکت های قبلی چک شود در حالت فعلی به سختی قابل انجام خواهد بود در این نوع ریدایرکت بالاترین سرعت ممکن اتفاق می افتد و بهتر از برای انتقال خود دامنه فقط استفاده شود.

در حالت استفاده از پلاگین دست شما برای جستجو بین ریدایرکت های قبلی، حذف و مدیریت باز است اما سرعت این نوع انتقال چون از سمت htaccess نیست و اول هسته خود سایت شما باید اجرا شود کمی کندتر از حالت قبل است.

آموزش سئو تکنیکال رویکردی متفاوت در این حوزه

سوالات متداول:

سوالات متداول در مورد ریدایرکت

مفهوم ساده تر ریدایرکت چیست؟

تصور کنید که طبق عادت همیشگی به یکی از مغازه‌های سوپر مارکت  محل خود مراجعه کرده اید و با درب بسته سوپر مارکت محل مواجه می‌شوید، روی در آن نوشته "این نانوایی تا اطلاع ثانوی تعطیل است"، چه کار میکنید؟ حالا ما میتوانیم روی درب سوپر مارکت محله بنویسیم: "  سوپر مارکت به کوچه بهار  پلاک 14 تغییر کرد". این جمله دقیقاً مفهوم ریدایرکت 301 در سئو است!

چه صفحاتی از سایت نیاز به ریدایرکت 301 دارند؟

 تمامی صفحاتی که به هر دلیل آدرس یا URL آن ها تغییر می‌کند، نیاز به ریدایرکت 301 دارند.

چگونه یک صفحه را ریدایرکت کنیم؟

پاسخ این سوال به طور مفصل در بالا شرح داده شده است.

ریدایرکت برای سایت چه ضرری دارد؟

اگر تعداد صفحات 404 سایت شما بیش از حد باشد، می‌تواند برای سئو مضر باشد ولی ریدایرکت یک روش مناسب برای ارجاع به صفحه جدید است که اتفاقاً میتواند کاربران شما را راضی نگه دارند. البته به این شرط که محتوای صفحه ریدایرکت شده با صفحه مورد نظر مرتبط باشد.

آیا استفاده از ریدایرکت 301 موجب کاهش اعتبار صفحه میشود؟

در حال حاضر ریدایرکت 301 موجب از دست رفتن اعتبار صفحه یا کاهش آن نمیشود ولی در گذشته شرایط متفاوتی حاکم بود.

ریدایرکت redirect یکی از اصول و کارهایی که تمام سئو کاران باید با آن آشنا باشند و نسبت به آن علم کامل داشته باشند و باید با آگاهی تمام نوع ریدایرکت مورد نظر خود را انتخاب کنند. یکی از بهترین روش‌های انجام ریدایرکت استفاده از افزونه قدرتمند Redirection است. زیرا با استفاده از آن تمام ریدایرکت‌های مورد نظر را می‌توانید به راحتی انجام دهید.

مطالعه بیشتر آموزش برنامه نویسی

بهزاد میرزازاده
مسیر درست با پرسش های درست ساخته می شود

مشاهده تمام مطالب نویسنده