اگر به یاد داشته باشید در مقاله انواع ریدایرکت را بشناسید به طور مفصل، هدف از انجام ریدایرکت را شرح دادیم و هر یک از انواع ریدایرکت (ریدایرکت 301 ، 302 و …) را به طور مختصر برایتان توضیح دادیم.
در آن مقاله گفتیم گاهی اوقات ممکن است بخواهید به هر دلیلی بازدیدکنندگان صفحهای از سایتتان را به یکی دیگر از بخشهای سایت هدایت کنید. برای انجام این کار باید از ریدایرکتها استفاده کنید. در حقیقت، ریدایرکت به معنی انتقال بازدیدکنندگان یک صفحه از سایت به صفحهی جایگزین دیگر است.
همچنین، در آن مقاله تفاوت های ریدایرکت 301 و 302 را به صورت اختصاری بیان کردیم. به طور ساده میتوان گفت، ریدایرکت 301 بازدیدکنندگان و موتورهای جستجو را به صورت دائمی به صفحهی جدید منتقل میکند. این در حالی است که استفاده از ریدایرکت 302 به این معنی است که قصد دارید بازدیدکنندگان را به صورت موقت به یک صفحه جدید منتقل کنید و پس از مدتی دوباره آنها را به صفحه اصلی برگردانید.
خب، در این مقاله یاد میگیرید چرا باید از ریدایرکت 301 استفاده کنید و اصلاً چگونه میتوان آن را بر روی سایت اعمال کرد.
ریدایرکت 301 چیست؟
ریدایرکت 301، ریدایرکت دائمی است که از یک URL به یک URL دیگر صورت میگیرد. در واقع، ریدایرکت 301 بازدیدکنندگان و موتورهای جستجو را برای همیشه به آدرسی غیر از آنچه کاربر در مرورگر خود تایپ کرده (یا بر روی لینک آن در نتایج جستجو کلیک کرده) است، منتقل میکند.
با استفاده از ریدایرکت 301 میتوانید تمام URLهای مختلف که برای یکی از صفحات سایتتان وجود دارند را یک جا جمع کنید تا موتورهای جستجو تمام این آدرسها را تحت عنوان یک صفحه رتبهبندی کنند. این کار جزو کارهای سئوی تکنیکال محسوب میشودولی کار سختی نیست؛
چگونه باید اینکار را انجام داد؟ اجازه بدهید با یک مثال توضیح دهیم.
در ادامه همین پاراگراف دو لینک متفاوت را مشاهده میکنید که هر دو، شما را به یک صفحهی یکسان منتقل میکنند. این اتفاق با استفاده از ریدایرکت 301 ممکن شده است.
به این ترتیب، زمانی که خوانندگان با هر یک از این لینکها به وبلاگ سایت ما اشاره میکنند، لینک اصلی وبلاگ ما (www.novin.com/blog) اعتبار مرتبط با هر یک از این لینکها را از موتورهای جستجو دریافت میکند.
آیا توجه کردید با وجود اینکه لینک دوم با //:http شروع شده، زمانی که وارد وبلاگ سایت ما میشوید آدرسی که در مرورگر خود مشاهده میکنید، بدون http است؟
این یکی از موارد استفاده از ریدایرکت 301 است. در حقیقت، برای اینکه از ایجاد محتوا و URL تکراری برای سایت خود جلوگیری شود باید از ریدایرکت 301 برای انتقال تمامی سیگنالهای رتبهبندی به یکی از صفحات سایتتان استفاده کنید.
به این ترتیب، فرقی ندارد که از چه آدرسی وارد وبلاگ سایت ما میشوید، هر کدام از این آدرسها در نهایت به www.novin.com/blog ختم میشود و این آدرس است که رتبه بندی نهایی را دریافت میکند. این یکی از ویژگیهای مهم ریدایرکت 301 این است که اعتبار بک لینکهای صفحه قدیمی را به صفحه جدید منتقل میکند که در اصطلاح به آن Link Juice میگویند.
بهتر است بدانید اگر در مثال بالا از ریدایرکت 301 استفاده نکنید، گوگل هر یک از این آدرس ها را به عنوان صفحهای مجزا در نظر میگیرد (با اینکه هر دو به یک صفحه ختم میشوند). بنابراین با استفاده از ریدایرکت 301 میتوانید از ایجاد چند نسخه از صفحات سایتتان جلوگیری کنید.
چرا باید از ریدایرکت 301 استفاده کنیم؟
شاید بتوان گفت تمام دلایلی که یک وبمستر یا کارشناس سئو از ریدایرکت 301 استفاده میکند را به 3 مورد زیر خلاصه میشود:
- ادغام کردن و کنترل کنوانسیونهای وب (مانند http://، www و …) تحت یک URL جهت بالا بردن اعتبار دامنه (موردی که در بالا به آن اشاره کردیم).
- جهت ریبرندینگ یا تغییر نام تجاری و URL وبسایت
- برای هدایت ترافیک از یک صفحه از سایت به صفحهای دیگر
البته دلایل دیگری مانند تمیز و کوتاه کردن URLهای سایت برای بهبود سئو یا جلوگیری از ایجاد محتوای Duplicate نیز میتواند از دلایل استفاده از ریدایرکت 301 باشد، اما میتوان این دو مورد را نیز به عنوان زیر شاخۀ موارد 1 و 3 شناخت.
خب، اولین مورد را در بالا برایتان توضیح دادیم. در مورد دوم زمانی که یک برند، نام تجاری یا نام وبسایت خود را تغییر میدهد با استفاده از ریدایرکت 301 میتواند نزدیک به 90 تا 99% از اعتبار بک لینکهای سایت قدیمی را به آدرس جدید منتقل کند. در چنین شرایطی، استفاده از ریدایرکت 301 ضروری است زیرا بازدیدکنندگان سایت باید به آدرس صحیح منتقل شوند تا آن چیزی را که میخواهند، به دست آورند.
حتما بخوانید: سئو تکنیکال چیست؟ 11 قدم که باید در سایت طی کنید!
در سومین مورد، ممکن است به هر دلیلی (تکراری بودن محتوا، پایین بودن کیفیت محتوا، تغییر آدرس صفحه برای بهبود سئو و …) مجبور شوید یکی از صفحات سایت خود را حذف و به یک آدرس جدید منتقل کنید. در این شرایط استفاده از ریدایرکت 301 برای از دست ندادن رتبه سایت ضروری است.
همچنین، گاهی اوقات برندهای تجاری دامنههایی که شبیه به دامنه خودشان است یا از لحاظ محتوایی با فعالیتشان همسویی دارند را خریداری میکنند تا بتوانند ترافیک بیشتری را به وبسایت خود هدایت کنند. در این شرایط نیز استفاده از ریدایرکت 301 برای حفظ اعتبار جستجوی دامنه اصلی ضروری است.
چگونه ریدایرکت 301 انجام دهیم؟
خب، به اصلیترین بخش مقاله، یعنی چگونگی انجام ریدایرکت 301 رسیدیم. برای انجام ریدایرکت 301 دو روش مرسوم وجود دارد:
- ایجاد ریدایرکت 301 از طریق فایل htaccess
- ایجاد ریدایرکت 301 در صفحات سایت
ریدایرکتهای سطح سرور معمولاً از طریق ایجاد تغییر در فایل htaccess. موجود در سرور انجام میشوند. ریدایرکتهای نوع دوم نیز با اضافه کردن کد در صفحه صورت میگیرند که این کار هم میتواند به صورت دستی و هم از طریق پلاگینها انجام شود. در ادامه به شما آموزش خواهیم داد که چگونه میتوان ریدایرکت 301 انجام داد.
ریدایرکت 301 (ریدایرکت دائمی) با استفاده از دستورهای فایل htaccess.
یکی از ابتداییترین روشهای انجام ریدایرکت 301، ویرایش فایل htaccess. در سرور است. این روش تنها برای سرورهایی که از نرم افراز Apache استفاده میکنند، کاربرد دارد. گفتنی است که مدیریت این تنظیمات در طولانی مدت کمی دشوار خواهد شد، مخصوصاً اگر وبلاگ نویسی هستید که قصد دارد پستهای خود را برای موتورهای جستجو بهینهسازی کند.
همچنین، هر بار که قصد انجام یک ریدایرکت را داشته باشید باید از طریق FTP وارد وبسایت خود شوید، فایلها را ویرایش کنید و دوباره آنها را بر روی سرور آپلود کنید. همۀ این مراحل برای انجام یک ریدایرکت باید صورت گیرد. به دلیل همین دشواریها، پیشنهاد میکنیم اگر آشنایی چندانی با سرور ندارید از این روش استفاده نکنید.
پیش از هر چیز باید بدانید فایل htaccess چیست. برای آشنایی با فایل htaccess. و ویرایش و ساخت آن، بر روی دکمه نسخه متنی کلیک کنید.
فایل htaccess. چیست؟
htaccess. فایل تنظیماتی است که برای وبسرورهایی که با نرم افزار Apache Web Server کار میکنند، استفاده میشود. زمانی که فایل htaccess. در دایرکتوری سایت قرار میگیرد، توسط نرم افزار Apache Web Server شناسایی و اجرا میشود.
این فایلهای htaccess. در حقیقت برای تغییر در تنظیمات نرم افزار Apache Web Server (فعال یا غیر فعال کردن قابلیتهای این نرم افزار) استفاده میشوند. فایلهای htaccess. شامل دستورات ابتدایی برای عملکرد ریدایرکتها (برای مثال در زمان بروز خطای 404) یا دستورات عملکردهای پیشرفتهای مانند ایجاد رمز عبور برای محتوای سایت هستند.
برای آنکه بتوانید از طریق فایل htaccess ریدایرکت انجام دهید، در ابتدا باید بدانید که این فایل کجا قرار دارد؟
دسترسی و ویرایش فایل htaccess.
مرحله اول: وارد حساب CPanel سایت خود شوید.
مرحله دوم: در قسمت Files، بر روی File Manager کلیک کنید.
مرحله سوم: گزینه Document Root for را انتخاب کنید: و از کشوی موجود، دامنهی سایت خود را انتخاب کنید.
مرحله چهارم: سپس، گزینهی Show Hidden Files را انتخاب کنید.
مرحله پنجم: بر روی دکمه Go کلیک کنید.
مرحله ششم: بر روی فایل htaccess. کلیک راست کرده و گزینه Edit را انتخاب کنید.
مرحله هفتم: اگر در مرحله قبل، فایل htaccess. بر روی سرور موجود نبود بر روی گزینه New File کلیک کرده و فایل ایجاد شده را htaccess. بنامید. سپس، فایل را در دایرکتوری روت یا در قسمت /public_html/ قرار دهید.
مرحله هشتم: با استفاده از یک نرم افزار ویرایشگر متن (آنلاین یا آفلاین) فایل htaccess. را ویرایش کنید.
حال که به فایل htaccess. دسترسی پیدا کردید، زمان انجام ریدایرکت 301 رسیده است. برای آنکه ریدایرکت 301 از طریق فایل htaccess. را بهتر یاد بگیرید، سعی کردیم هر بخش از آن را به صورت جداگانه به شما آموزش دهیم.
ریدایرکت 301 تک فایل
برای آنکه بتوانید یک فایل از سایت را به صورت تکی ریدایرکت 301 کنید (برای مثال آدرس example.com/oldfile.htm را به example.com/newfile.htm تغییر دهید)، باید کد زیر را در فایل htaccess. قرار دهید:
Redirect 301 /old.html http://www.example.com/new.html
حتما بخوانید: سیر تکامل سئو: از آغاز تا امروز
اما این کد به چه معناست؟ اجازه بدهید توضیح بدهم:
- دستور redirect 301 – به موتورهای جستجو و مرورگرها میگوید که این صفحه به صورت دائمی جابهجا شده است.
- old.html/ – محل قرارگیری فایل قدیمی را مشخص میکند.
- http://www.example.com/new.html – محل قرارگیری صفحه جدید را مشخص میکند (همان صفحهای که میخواهید بازدیدکنندگانتان به آن منتقل شوند). توجه داشته باشید در این بخش باید آدرس URL را به صورت کامل بنویسید.
توجه داشته باشید اگر قصد دارید چندین صفحه را به این شکل جابهجا کنید، باید برای هر صفحه این دستور را به صورت جداگانه وارد کنید. به این ترتیب مطمئن خواهید بود که تمام صفحات سایتتان به صورت کامل ریدایرکت میشوند.
همچنین، برای آنکه یک فایل را به صورت جداگانه به یک فایل از یک دامنه دیگر ریدایرکت کنید (برای مثال فایل example.com/oldfile.htm را به آدرس example.net/newfile.htm منتقل کنید)، باید دستور زیر را در فایل htaccess. وارد نمایید:
Redirect 301 /oldfile.htm http://example.net/newfile.htm
ریدایرکت کردن یک دامنه قدیمی به یک دامنه جدید
اگر دامنهای قدیمی دارید (مثلاً example.com) و اکنون قصد دارید از یک دامنه جدید (برای مثال example.net) برای وبسایت خود استفاده کنید میتوانید با راه اندازی یک ریدایرکت 301، وبسایت خود را به دامنه جدید منتتقل کنید.
برای انجام این کار باید دستور زیر را در فایل 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]
استفاده از نسخه www دار دامنهی وبسایت
همانطور که در ابتدای همین مقاله اشاره کردیم یک موتور جستجو مانند گوگل، آدرسهای example.com و www.example.com را به عنوان دو وبسایت مجزا شناسایی میکند. به همین دلیل متخصصان سئوی گوگل همیشه پیشنهاد میکنند که یکی از این نسخهها را به عنوان آدرس اصلی و قابل نمایش برای موتورهای جستجو انتخاب کنید و با استفاده از ریدایرکت 301 دیگر نسخهها را نیز به این آدرس منتقل کنید.
اگر در حال حاضر تعداد زیادی بک لینک با آدرس example.com برای خود دست و پا کردهاید، اما قصد دارید کاربران در نهایت با آدرس www.example.com در مرورگر خود مواجه شوند میتوانید با اضافه کردن کد زیر در فایل htaccess. خود، این کار را انجام دهید:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^example.com [NC]
RewriteRule ^(.*)تومان http://www.example.com/تومان1 [L,R=301,NC]
به دنبال خدمات سئو هستید؟
برای مشاوره رایگان، همین الان با ما تماس بگیرید.
استفاده از نسخهی بدون www دامنهی سایت
خب، این مورد دقیقاً عکس مورد قبلی است. زمانی که میخواهید نسخه www.example.com خود را به نسخهی بدون www منتقل کنید، باید کدهای زیر را در فایل htaccess خود وارد کنید:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.example.com [NC]
RewriteRule ^(.*)تومان http://example.com/تومان1 [L,R=301,NC]
ریدایرکت کردن فایلهای سرور با پسوند خاص
خب، اگر میخواهید تمامی فایلهای سایت خود را که پسوندی خاص دارند را به دیگر پسوندها تغییر دهید (برای مثال قصد دارید آدرس example.com/file.php را به آدرس example.com/file.htm تغییر دهید)، باید کد زیر را در فایل htaccess. قرار دهید:
RewriteEngine On
RewriteCond %{REQUEST_URI} .phpتومان
RewriteRule ^(.*).phpتومان /تومان1.htm [R=301,L]
خب، این بود روش انجام ریدایرکت 301 با استفاده از دستورات فایل htaccess . همانطور که گفتیم انجام ریدایرکت به این شکل کمی دشوار است. بنابراین اگر تسلط کافی بر روی سرور سایت خود ندارید، از دیگر روشها استفاده نمایید.
حتما بخوانید: تکنیک هدف گذاری SMART چیست؟
ریدایرکت 301 از طریق PHP
اگر از سیستم مدیریت محتوای وردپرس استفاده میکنید برای اجرای ریدایرکت 301، دو راهکار دارید:
- اعمال تغییرات بر روی کدهای هدینگ صفحه
- استفاده از ابزار داخلی wp_redirect وردپرس برای انجام ریدایرکت
برای آنکه بتوانید از طریق کدهای PHP، ریدایرکت 301 یا همان ریدایرکت دائم را اعمال کنید، باید کدهای زیر را در بالاترین قسمت محتوا قرار دهید (در بالاترین قسمت کدها، پیش از آنکه چیزی شروع شود):
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.example.com/a-new-destination");
exit();
?>
و این اسنیپت در نهایت به یک خط کد زیر تبدیل میشود:
همچنین، اگر بخواهید با استفاده از ابزار wp_redirect که در داخل وردپرس قرار دارد، این کار را انجام دهید. کد شما به شکل زیر خواهد شد:
wp_redirect( "http://www.example.com/a-new-destination", 301 );
توجه داشته باشید اگر فراموش کنید عدد 301 را در کد بالا وارد کنید، هم وردپرس و هم PHP ریدایرکت شما را به عنوان ریدایرکت 302 خواهند شناخت. زمانی که این کد در صفحه قرار میگیرد، بازدیدکنندگان را به آدرس جدید شما منتقل می کند. تنها کافیست کد PHP بالا را در صفحه مورد نظر خود وارد نمایید و به جای http://www.example.com/a-new-destination، آدرس صفحه خود را وارد کنید تا عملیات ریدایرکت 301 کامل شود.
این روش بسیار آسانتر از انجام ریدایرکت از طریق فایل htaccess است. این طور نیست؟ با این حال باید توجه داشته باشید، زمانی که تعداد صفحات زیادی را به این شکل ریدایرکت کنید، سرعت وبسایت شما بسیار کند خواهد شد. همچنین اگر از وردپرس استفاده میکنید، افزونههای متعددی برای انجام ریدایرکت 301 وجود دارند که میتوانند در این زمینه به شما کمک کنند.
ریدایرکت 301 از طریق ASP
شاید وبسایت شما به جای زبان PHP با زبان ASP نوشته شده باشد. در این صورت تکلیف چیست؟ برای انجام ریدایرکت از طریق ASP باید چه کاری انجام داد؟
خب، در این شرایط باید بدانید که همۀ مراحل دقیقاً مانند ریدایرکت با زبان PHP صورت میگیرد با این تفاوت که کدهای ریدایرکت 301 در زبان ASP متفاوت است. برای این کار، کافیست کد زیر را در بالای کدهای صفحه خود وارد نمایید:
<%@ Language=VBScript %>
<%
Response.Status=”301 Moved Permanently”
Response.AddHeader “Location”,”http://www.new-url.com/”
%>
نتیجهگیری
حال که به قسمت جمعبندی این مقاله رسیدهایم، شما دیگر میدانید ریدایرکت 301 چیست، چرا از آن استفاده میشود و برای اعمال آن باید از چه روشی استفاده کرد. زمانی که از ریدایرکت 301 استفاده میکنید، در حقیقت به موتورهای جستجو میگویید “این صفحه از اینجا نقل مکان کرده است. برای یافتنش بهتر است به این آدرس مراجعه کنید!”.
در گذشته، استفاده از ریدایرکت 301 با خطراتی مانند از دست دادن پیج رنک گوگل مواجه بود، اما مسئولان گوگل در سال 2016 اعلام کردند که استفاده از ریدایرکت 301 به جایگاه شما در نتایج جستجو تاثیر نمیگذارد و با خیال راحت میتوانید از آن استفاده کنید. در آینده نزدیک مقالهای درباره تاثیر استفاده از ریدایرکت 301 بر سئوی سایت را برایتان منتشر خواهم کرد.
مثل همیشه، خوشحال میشوم که در قسمت دیدگاهها پاسخگوی سوالات شما عزیزان باشم. امیدوارم که خواندن این مقاله برایتان مفید بوده باشد.
موق باشید!