نوشته‌ها

دلایل اصلی کاهش ترافیک وب سایت

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

دلایل بسیار زیادی از جمله تغییر الگوریم های گوگل و یا خطاهای برنامه نویسی و…  وجود دارند که می توانند باعث کاهش ترافیک سایت گردند و لزوما تنها دلیل آن خطای برنامه نویس یا طراح سایت نیست. در ادامه نتیجه تحقیقات اعضای شورای آژانس فوربس در رابطه با مهمترین دلایل کاهش ترافیک سایتها آورده شده است.

  1. عدم بهینه سازی موبایل

اگر وب سایت شما برای استفاده از تلفن همراه بهینه نباشد، کاهش ترافیک روی سایت را تجربه می کنید. توجه داشته باشید که با توجه به گسترش روز افزون استفاده از تلفن های همراه و موبایل توسط کاربران، الگوریتم های جستجویGoogle ، برای وب سایت هایی که واکنشگرا (Responsive) هستند و در ورژن های موبایل و آی پد نیز بدرستی نمایش داده می شوند و بخش های مختلف سایت به آسانی قابل دسترس باشند، امتیاز بالاتری در نظر خواهد گرفت.

لذا توصیه می شود هرازچندگاهی صفحات وب سایت خود را در موبایل خود باز کنید تا مطمئن شوید که محتوای سایت به درستی نمایش داده می شود و نیز طراحی آن کاربرپسند باشد.

  1. تغییرات قابل توجه در وب سایت

اغلب اعمال تغییرات اشتباه در وب سایت، تولید فایل ربات نامناسب و یا به روز رسانی لینک های موجود، می تواند روی کاهش ترافیک سایت تاثیرگذار باشد.در این خصوص می بایست با تیم خود بررسی  کنید تا متوجه شوید چه تغییراتی در هفته گذشته روی سایت اعمال شده است. اگر از Google Analytics استفاده می کنید، می توانید با بررسی یادداشت های اخیر علل کاهش ترافیک را شناسایی کنید.

  1. بک لینک های جدید

بک لینک های Backlink سایت خود را بررسی نموده تا مشخص گردد آیا لینک های جدیدی اخیرا اضافه شده است. برخی از ابزارهای عالی برای مشاهده و بررسی بک لینک های شما  Ahrefs، SEMrush و CognitiveSEO  می باشند.

  1. محتوای قدیمی وب سایت

گاهی اوقات کاهش ترافیک ناشی از مسائل فنی یا تغییرات الگوریتم گوگل است. گاهی نیز کمبود محتوای جدید باعث کاهش ترافیک سایت می شود. مطالب سایت می بایست به صورت دوره ای و منظم از پست های جدید وبلاگ گرفته تا مطالعات موردی مشتری ها و ایجاد سایر محتوای مفید و غیر تبلیغاتی دائما به روزرسانی گردد.

  1. استراتژی های بازاریابی ایمیل ضعیف

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

  1. سرعت لود پایین وبسایت

سرعت سایت یکی از عوامل اصلی و مهمی است که Google در الگوریتم های خود برای رتبه بندی صفحات استفاده می کند. سرعت پایین وب سایت و باز شدن صفحات سایت به کندی، روی کاهش ترافیک وب سایت تاثیر بسزایی دارد. ممکن است به دلیل تجربه ضعیف کاربر، عدم بهینه سازی، صفحات سایت به کندی بارگیری شوند و باز شدن تصاویر و یا سایت مستلزم مدت زمان طولانی تری باشد که این عامل باعث کاهش محسوس ترافیک سایت می گردد. تحقیقات اخیر نشان می دهد که زمان طلایی برای لود شدن سایت، سه ثانیه یا کمتر ، به خصوص در تلفن های همراه می باشد.

  1. رقابت جاوا اسکریپت

اغلب اوقات که شاهد کاهش ناگهانی و شدید ترافیک سایت هستیم، با بررسی های دقیق و پیگیری با تیم توسعه دهنده سایت، در می یابیم که علت اصلی آن اعمال تغییرات در کدهای جاوااسکریپت (Java Script) می باشد. اغلب طراحان هنگام به روزرسانی محتوای سایت، با ایجاد تغییرات نادرست در کدهای جاوااسکریپت نظیر (heatmapping, marketing automation, form code)، باعث می شوند کدهای مربوطه بدرستی توسط الگوریتم های گوگل تجزیه و تحلیل نشود.

  1. افت در رتبه بندی جستجو

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

  1. خطاهای فنی سایت

در صورتی که با افت شدید ترافیک مواجه شدید در قدم اول، از خدمات سرور سایت / میزبانی هاستینگ خود اطمینان حاصل کنید. آیا سایت در حال حاضر بالا هست؟ آیا بدرستی همه صفحات آن قابل دسترسی هستند؟ آیا همه صفحات قابل دسترسی هستند؟ آیا ریدارکت های ۳۰۱ بدرستی تنظیم شده اند، گواهی SSL به درستی فعال هست؟

داده‌های گوگل آنالیتیک را بهتر تحلیل کنیم

فرض کنید وارد ابزار گوگل آنالیتیک (Google Analytics) شده‌اید و در کمال تعجب می‌بینید در ترافیک ورودی به سایت افزایش یا کاهش قابل‌توجهی رخ‌داده، در چنین شرایطی احتمالاً رئیستان درباره موضوع توضیح می‌خواهد و شما هم دربه‌در دنبال علت می‌گردید. درصورتی‌که بتوانید داده‌های گوگل آنالیتیک (GA) را دقیق‌تر تحلیل کنید، اوضاعتان واقعاً بهتر می‌شود! در این صورت می‌توانید با سهامداران حقوقی مجموعه ارتباط مناسب‌تری برقرار کنید و ارزش کمپین سئو را به‌خوبی برآورد کنید. در ادامه سعی داریم ۵ سؤال اساسی را که می‌توانیم با تحلیل داده‌های GA جواب بدهیم، بررسی کنیم.
۱)    چرا ترافیک ورودی به سایت دچار تغییرات اساسی شده است؟
در هر بازه زمانی منابع مختلفی به سایتمان ترافیک می‌فرستند؛ بعدازاینکه وارد GA شویم، به‌صورت اتوماتیک وارد بخش All sessions می‌شویم. با تفکیک داده‌های این بخش می‌توانیم متوجه بشویم کاهش/ افزایش ترافیک در کدام بخش‌ها رخ‌داده است.
قبل:

بعد:

در این مورد خاص کاهش ترافیک به دلیل افت محسوس تعداد بازدیدکنندگان پولی (paid) اتفاق افتاده وگرنه سایر منابع ترافیک به همان صورت ثابت هستند. ملاحظه می‌کنید که با تحلیل چنین داده‌هایی می‌توانیم ریشه مشکل را شناسایی کنیم؛ حتی می‌توانیم وضعیت را کمی دقیق‌تر بررسی کنیم. دلیل کاهش تعداد بازدیدکنندگان پولی سایت چیست؟ استراتژی‌مان تغییر کرده؟ میزان بودجه تغییر کرده؟ درصورتی‌که وضعیت را تا این سطح تحلیل کنیم، می‌توانیم قبل از اینکه وضعیت بحرانی شود، مشکل را حل کنیم.
درصورتی‌که بودجه تبلیغات افزایش پیداکرده باشد یا قرار باشد CPC (هزینه هر کلیک در تبلیغات پرداخت کلیکی) کاهش پیدا کند، به‌احتمال‌زیاد ترافیک ورودی از بخش پولی باید افزایش محسوسی پیدا کند.
۲)    ترافیک ورودی به کسب‌وکارمان مرتبط است؟
درصورتی‌که ترافیک ورودی کاهش یا افزایش پیداکرده، ولی تعداد مشتریان بالفعل سایت ثابت باقی‌مانده، بهتر است بررسی کنید ترافیک ورودی به کسب‌وکارتان مرتبط است یا نه. مثلاً می‌توانید موقعیت مکانی بازدیدکنندگان را بررسی کنید؛ کافی است بر روی گزینه Acquisition Geo Location کلیک کنید. بهتر است داده‌های فعلی را با داده‌های سال قبل مقایسه کنید.

در این مثال ملاحظه می‌کنید که کاهش ترافیک بر اثر کاهش تعداد کاربران هندی اتفاق افتاده است. درنتیجه درصورتی‌که بدانیم چنین کاربرانی هیچ ربطی به کسب‌وکارمان ندارند، لزومی ندارد نگران کاهش ترافیک باشیم. معمولاً بررسی موقعیت جغرافیائی بازدیدکنندگان از تعدادشان مهم‌تر است. درصورتی‌که تعداد بازدیدکنندگان در موقعیت جغرافیائی هدفتان افزایش پیدا نمی‌کند، شاید بهتر باشد درباره استراتژی فعلی مجموعه تجدیدنظر کنید.
۳)    تغییرات در حجم ترافیک ناشی از تغییر فصل است؟
تغییرات فصلی را به دو روش کلی می‌توانیم بررسی کنیم: روش اول که کاملاً هم مشخص است، ترافیک را در دو سال متوالی باهم مقایسه می‌کنیم تا معلوم شود حداکثر و حداقل مشابهی دارند یا نه. درست مانند مورد شماره ۱ درصورتی‌که اختلاف فاحشی وجود داشته باشد، باید منابع ورودی را از هم تفکیک کنیم.
روش دوم این است که بازدیدکنندگان مستقیم و ارگانیک را باهم مقایسه کنیم؛ درصورتی‌که تغییر فصل عامل کاهش یا افزایش ترافیک باشد، هر دو الگو باید نقاط حداکثر و حداقل مشابهی داشته باشند.
دو سال متوالی:

مقایسه ترافیک مستقیم و ارگانیک:

همان‌طور که می‌بینید ترافیک مستقیم و ارگانیکمان الگوی تقریباً مشابهی دارند. درصورتی‌که ترافیک مستقیم ثابت مانده باشد، ولی ترافیک ارگانیک به‌صورت یکنواخت کاهش پیداکرده باشد، احتمالاً برند با مشکلات اساسی دست‌به‌گریبان است.
۴)    وبلاگ مجموعه ترافیک ایجاد و کاربران را تبدیل می‌کند؟
بسیاری از کمپانی‌هایی که وبلاگ نویسی را به‌عنوان یکی از المان‌های اساسی استراتژی بازاریابی‌شان دنبال می‌کنند، به ROI وبلاگشان اهمیت ویژه‌ای می‌دهند. در این خصوص دو فاکتور اساسی برای بررسی وجود دارد: میزان تبدیل صورت گرفته و ترافیک ورودی از طریق آن، (فرض می‌کنیم از ابزارهای محاسبه تبدیل استفاده می‌کنید) کافی است داخل GA مسیر Behavior Site Content Landing Pages را دنبال کنید. همان‌طور که می‌بینید وبلاگمان هم ترافیک زائی می‌کرده و هم کاربران را تبدیل می‌کرده است. مخصوصاً پست “Awesome1” عملکرد بسیار موفقی داشته است.

 ,

به کمک چنین داده‌هایی حتی می‌توانیم برای محتوای وبلاگ هم بهتر برنامه‌ریزی کنیم.
۵)    استراتژی سئوی سایت در مسیر صحیح قرار دارد؟
هدف اصلی در پس پرده تمام فعالیت‌های سئو تنها یک‌چیز است: تبدیل! هدف از ارتقاء رنکینگ یا افزایش ترافیک هم در حقیقت بالا بردن میزان تبدیل است. درصورتی‌که میزان تبدیل مجموعه نسبت به زمانی که کمپین سئو نداشتید، بیشتر شده، تلاش‌هایتان موفقیت‌آمیز بوده‌اند. به‌طور حتم ترافیک ورودی دستخوش نوساناتی می‌شود و بازدیدکنندگان هم همیشه تبدیل نمی‌شوند. بهتر است صفحات تبدیل را به صفحه تشکر از کاربر ریدایرکت کنیم و آن صفحات را در گوگل آنالیتیک هدف‌گذاری کنیم.

هدف‌های تعیین‌شده در ابزار را می‌توان در بخش Admin Goals مشاهده کرد. با انتخاب و نام‌گذاری هدف‌های جدید و تعیین صفحه مقصد برای هرکدام، می‌توانیم اهداف دیگری هم به ابزار اضافه کنیم. URL صفحه مقصد را وارد کنید، گزینه Create Goal را انتخاب کنید و کار تمام است! درصورتی‌که تمایل می‌توانیم برای هدف موردنظرمان ارزش خاصی تعیین کنیم تا گوگل آنالیتیک آن را دنبال کند. در این مرحله می‌توانیم وارد بخش Conversion Goals بشویم و اهدافمان را بررسی کنیم.

اهمیت تبدیل‌ها به‌مراتب از ترافیک ورودی بیشتر است. درصورتی‌که میزان ترافیک ورودی چنگی به دل نمی‌زند ولی آمار تبدیل در طول سال‌های متوالی راضی‌کننده است، کمپینتان موفق بوده است. هدف اصلی هر استراتژی سئو باید رشد بیشتر کسب‌وکار باشد.

روش های افزایش سرعت وب سایت(قسمت اول)

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

تحقیقات انجام شده توسط Akamai نشان می دهد که ۴۷ درصد از مردم انتظار دارند که یک صفحه وب در کمتر از ۲ ثانیه بارگذاری شود و اگر بارگذاری صفحات سایت بیش از ۳ ثانیه طول بکشد، ۴۰ درصد از بازدیدکنندگان، وب سایت شما را ترک کنند.

همچنین تحقیقات اخیر نیز نشان می دهد درصورتی که زمان بارگذاری وب سایت بهردلیل، از ۲ ثانیه به ۱۰ ثانیه افزایش یابد، میزان  ۳۸٪ به آمار بازدیدکنندگانی که سایت شما را ترک می کنند، افزوده خواهد شد.
از طرفی دیگر در زمان اوج ترافیک ورودی سایت، بیش از ۷۵ درصد از بازدیدکنندگان به جای اینکه صبر کنند تا صفحه وب سایت شما با تاخیر باز شود، به سایت سایر رقبا، مراجعه خواهند نمود.

همچنین از نظر موتور های جستجو و نیز سئوی سایت(SEO)، فاکتور سرعت بسیار موثر بوده و کندشدن سرعت سایت، باعث کاهش آمار بازدید سایت و در نتیجه کاهش رتبه سایت شما خواهد شد.

به طور خلاصه، داشتن یک وب سایت با سرعت لود پایین، بر روی موارد زیر تأثیر منفی خواهد گذاشت:

  • ترافیک و آمار بازدید سایت
  • میزان تعامل کاربران با سایت
  • میزان فروش آنلاین محصولات
  • تاثیر منفی در ذهن بازدیدکنندگان
  • تاثیر منفی در سئو سایت و رتبه سایت

لذا با توجه به موارد ذکر شده و ضرورت افزایش سرعت وب سایت، در ادامه روش هایی موثر جهت افزایش سرعت وب سایت آورده شده است.

 

پیش نیاز تغییرات:

قبل از هر اقدامی جهت بهینه سازی وب سایت خود برای بارگیری سریع در جهت افزایش سرعت آن، دو مورد را باید در نظر داشته باشید:

ابتدا زمان بارگذاری وب سایت فعلی خود را از طریق ابزارهای آنلاین نظیر  GTmetrix ، Pingdom یا Google PageSearch Insights  بررسی کنید.  این ابزار آنلاین سرعت فعلی وب سایت شما را نمایش داده و امکان مقایسه سرعت بارگذاری صفحات را پس از اعمال تغییرات فراهم میکند.

ثانیا، مطمئن شوید که از محتوای سایت خود نسخه پشتیبان تهیه کرده اید، زیرا برخی از این روش ها نیاز به تنظیمات / ویرایش فایل هایی دارند که می توانند باعث حذف برخی اطلاعات سایت شما شوند. جهت راهنمایی می توانید با پشتیبانی شرکت هاستینگ خود تماس حاصل نمایید.

مراحل افزایش سرعت در وب سایت :

– حذف افزونه های غیر ضروری و پلاگین ها

پلاگین ها به افزایش قابلیت های وب سایت شما کمک می کنند، اما می بایست تنها پلاگین هایی را که مورد نیاز می باشد نصب نموده و از بکاربردن پلاگین های اضافی خودداری نمایید.

افزونه های غیر ضروری(Add-ons) و پلاگین ها(Plugins) می توانند سرعت وب سایت شما را بشدت کاهش دهند. همچنین اگر شما از CMS های وبلاگ نویسی مانند  WordPress، Joomla  ویا دروپال استفاده می کنید، این مرحله بسیار مهم است.

تحقیقات اخیر در رابطه با میزان تاثیر پلاگین ها روی سرعت سایت نشان میدهد که چگونه با بازنگری پلاگین ها می توان سرعت بارگزاری وب سایت خود را از ۴٫۲۳ ثانیه به ۱٫۳۳ ثانیه کاهش دهیم؛ همچنین نتیجه این تحقیق نشان میدهد که پلاگین ها حدود ۸۶% از سرعت سایت را به خود اختصاص می دهند.

نکته بسیار مهم اینست که تعداد افزونه هایی که در وب سایت خود نصب کرده اید، در سرعت سایت تاثیر ندارد، بلکه در مورد کیفیت و نحوه عملکرد این پلاگین ها می باشد. یک وب سایت با ۵۰ پلاگین می تواند بسیار سریعتر از یک وب سایت شامل ۱۰ پلاگین بی کیفیت، بارگذاری شود.

به طور کلی، سه نوع از پلاگین ها به شرح زیر باعث کندی وب سایت خواهند شد:

  • پلاگین هایی را که تعداد نسبتا زیادی اسکریپت ها و style ها را اجرا می کنند،
  • پلاگین هایی که تعداد زیادی درخواست به سایتهای خارجی ارجاع میدهند،
  • ونیز پلاگین هایی که بار اضافی روی دیتابیس شما ایجاد می کنند.

لذا می بایست این پلاگین ها را حذف نموده ویا پلاگین های مشابه دیگر جایگزین آنها نمود.

در صورتی که از وردپرس استفاده میکنید، پیشنهاد میشود از پلاگین P3 (Plugin Performance Profiler) استفاده کنید.

این پلاگین، تمام پلاگین های نصب شده در سایت وردپرس را جهت یافتن مواردی که باعث کندی سرعت سایت می شوند، اسکن نموده و به شما گزارشی کامل ارائه می دهد که چگونه هر افزونه /پلاگین بر عملکرد وب سایت شما تاثیر می گذارد.

– تاثیر قابل توجه محدودیا حذف کردن شبکه های اجتماعی

در صورتی که تصور می کنید میبایست تعداد ۱۰۰ مورد از شبکه های اجتماعی در وبسایت خود داشته باشید، کاملا در اشتباهید!

ممکن است تصور کنید درج گزینه های شبکه های اجتماعی، باعث افزایش قابل ملاحظه ای در ترافیک وب سایت شود، اما تحقیقات نشان می دهد که سرعت بارگذاری وب سایت ترافیک را کاهش می دهد.

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

راه حل اینست که استفاده از شبکه های احتماعی را در سایت محدود کرده و یا تنها آندسته را استفاده نمایید که تاثیر چندانی روی سرعت سایت نداشته باشند و یا از آنها در صفحاتی غیر از صفحه اول و نیز صفحات اصلی سایت (بطور مثال در صفحه تماس با ما) استفاده کنید.

– کدهای ارزیابی Analytics  و تحلیل تبلیغات غیر همزمان

کدهای مربوط به ارزیابی فعالیت مشتریان در سایت (Analytics tracking codes) و نیز تجزیه و تحلیل نتایج تبلیغات اینترنتی روی برند شما، می تواند به طور قابل توجهی باعث کاهش سرعت وب سایت شوند، به خصوص زمانیکه سرعت سرور مقصد نیز کند باشد.

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

– فعال کردن  Expires Header

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

Expires Header برای مرورگر بازدید کننده مشخص می کند که چه زمانی نیاز هست درخواستی جدید به سرور و یا کش مرورگر(Browser) ارسال شود.

 Expiry Headers زمانی استفاده می شود که شما نمی خواهید کاربران برای هر بررسی فایل و بروزرسانی آنها یک درخواست به سمت سرور ارسال کنند، به عبارتی سرور زمان انقضای اطلاعات یک فایل را میداند و در بازه ای که زمان آن منقضی شده است برای بروزرسانی فایل های کش شده در سیستم کاربر اقدام میکند، به همین دلیل پروکسی/کش بار زیادی برای هر بار چک کردن بروزرسانی ها روی سرور ایجاد نخواهد کرد.

بعنوان مثال اگر Expires Header  را طوری تنظیم نمایید که مرورگر بازدید کننده، تنها یک بار در ماه درخواست به سمت سرور ارسال کند، فایل مربوطه پس از دریافت از سرور، در حافظه کش (cache) مرورگر کاربر به مدت یکماه ذخیره شده و با هر بار فراخوانی کاربر، درخواست جدید به سرور ارسال نمیشود.

این قابلیت، همانند یک شمشیر دو طرفه برای افزایش سرعت سایت است، زیرا تعداد درخواست های HTTP  را در سرور شما محدود می کند و در عین حال باعث کاهش بار سرور شما می شود، زیرا یک درخواست/فایل تکراری بارها و بارها به سمت سرور ارسال نمی شود.
اگر می خواهید Header Expires  را در وب سایت خود اجرا کنید، این آموزش توسط GTmetrix به شما نشان می دهد که چگونه این کار را انجام دهید.

 

– فعال کردن Cache

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

فعال کردن ذخیره سازی برای وب سایت شما می تواند سرعت سایت را به میزان قابل توجهی افزایش دهد، و تحقیقات نشان می دهد که فعال سازی یک حافظه کامل برای یک وب سایت می تواند زمان بارگذاری وب سایت را از ۲٫۴ ثانیه تا ۰٫۹ ثانیه کاهش دهد.

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

همچنین در لینک زیر می توانید آموزش نحوه تعریف کش را ملاحظه فرمایید:

بهینه سازی سایت با استفاده از HTTP Caching

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

قابلیت ذخیره سازی(Caching) یک روش عالی جهت صرفه جویی در زمان بازدیدکنندگان و نیز کاهش بار ترافیک (Bandwidth) سایت شما می باشد.
در مورد وب سایت ها، مرورگر می تواند یک کپی از تصاویر، stylesheets ها، جاوا اسکریپت یا کل صفحه را در سیستم کاربر ذخیره کند بدین ترتیب در بازدید‌های بعدی که کاربر به آن منابع نیاز دارد (مانند یک اسکریپت یا لوگو که در هر صفحه سایت نمایش داده می شود)، مرورگر مجبور نیست که آن را مجدد دانلود کند.

همچنین یکی از مواردی که در سایت gtmetrix ، در جهت بالارفتن سرعت سایت نیز توصیه میگردد، فعال نمودن قابلیت Cashing می باشد.

در تصویر زیر نحوه درخواست صفحه وب سایت از یک سرور را مشاهده می کنید:

  • مرورگر: من درجستجوی فایل html هستم. آیا در سرور موجود است؟
  • سرور: در حال جستجوی آن…، بله موجود است.
  • مرورگر: بسیار عالی، من آن را دانلود کرده و به کاربر نشان می دهم.از طرفی دیگر زمانی که مرورگر کپی از یک فایل/عکس (مانند یک تصویر لوگو) را روی سیستم کاربر، ذخیره می کند؛ در هر صفحه ای که به لوگو نیاز دارد، همان نسخه ذخیره شده را نمایش میدهد. حال چه اتفاقی می افتد زمانی که فایل مربوطه / لوگو شرکت در سایت تغییر کند؟
    بنابراین، می بایست راهی وجود داشته باشد که مرورگر متوجه شود که آیا آپدیت جدید برای اون فایل/تصویر وجود دارد و در صورت وجود نسخه جدید، فایل یا تصویر جدید را بجای قبلی، ذخیره نماید و در بازدید بعدی کاربر فایل جدید را نمایش دهد.

     

    روش های ایجاد caching:

    • روش Last-Modified

    در این روش سرور به مرورگر اعلام کند که چه نسخه ای از فایل را قبلا ارسال کرده است. در این روش سرور می تواند تاریخ آخرین اصلاح مربوطه را با عنوان Last-modified همراه فایل برای مرورگر ارسال کند. بطور مثال:

    Last-modified: Fri, 16 Mar 04:00:25 GMT File Contents (could be an image, HTML, CSS, Javascript…)

    به این ترتیب مرورگر متوجه میشود که فایل مربوطه در چه تاریخی ایجاد شده است. دفعه بعد که مرورگر به logo.png نیاز دارد، می تواند یک بررسی ویژه با سرور انجام دهد:

    در تصویر زیر  مرورگر می داند که فایل آن (logo.png) در تاریخ ۱۶ مارس ایجاد شده است. دفعه بعد که مرورگر به logo.png نیاز دارد، می تواند یک بررسی ویژه با سرور انجام دهد:

مرورگر: سرور لطفا فایل مربوطه را در صورتی که پس از تاریخMar 16  تغییرات داشته است، ارسال کن.

سرور: در حال بررسی تاریخ آخرین تغییرات…

سرور: فایل مربوطه از این تاریخ به بعد تغییری نداشته است.

مرورگر: پس من نسخه کش شده را به کاربر نمایش می دهم.

  • روش ETag

روش اول، یعنی مقایسه نسخه فایلها با تاریخ آخرین تغییرات، معمولا بدرستی کار می کند، اما می تواند منجر به بروز برخی مشکلات شود. بعنوان مثال در صورتی که ساعت سرور در ابتدا اشتباه بوده و پس از مدتی اصلاح شود ویا اینکه زمان سرور به روز رسانی نشده باشد.

لذا در روش دوم استفاده از ETags  پیشنهاد میگردد. ETag شناسه منحصر به فردی است که به هر فایل داده می شود. در نتیجه مانند روش کدگزاری اطلاعات از طریق hash  یا اثر انگشت افراد متفاوت می باشد. هر فایل دارای یک شناسه منحصر به فرد است و اگر فایل را تغییر دهید (حتی در یک بایت)، شناسه آن نیز تغییر می کند.

در نتیجه به جای ارسال زمان آخرین تغییرات فایل، سرور می تواند ETag مربوط به آن فایل را برای مرورگر ارسال نماید.

ETag: ead145f File Contents (could be an image, HTML, CSS, Javascript…)

ETag می تواند هر رشته ای باشد که به طور منحصر به فرد فایل مربوطه توسط آن شناسایی می شود.

مرورگر: در رابطه با فایل خاص (بعنوان مثال logo.png)، اگر برچسبی با عنوان “ead145f” در سرور موجود نیست،فایل logo.png را ارسال کن.
سرور: بررسی شناسه موردنظر فایل  logo.png
سرور: شما شانس آوردید! شناسه “ead145f” روی سرور موجود است و تغییر نکرده است.

مرورگر: بسیار خوب! من به کاربر، نسخه کش شده را نشان می دهم.

  • روش Expires

ذخیره کردن فایل در کش مرورگر و بررسی مداوم آن با سرور یک راه حل قابل قبول است، اما بهترین راه حل نیست. با بررسی تاریخ آخرین تغییرات و نیز بررسی ETag ، در هر صورت نیاز است که درخواستی به سمت سرور ارسال گردد.

البته با استفاده از دو روش بالا بجای درخواست فایل های حجیم، حجم بسیار کمتری از سرور دریافت می شود.

اما سوالی که مطرح می شود اینست که آیا این امکان هست که با هر بار مشاهده سایت، کلا درخواستی جدید به سمت سرور ارسال نشود؟ بله! با استفاده از تعریف تاریخ انقضا این امکان هست.

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

در این صورت Header مربوطه به صورت زیر می باشد:

Expires: Tue, 20 Mar 04:00:25 GMT File Contents (could be an image, HTML, CSS, Javascript…)

لذا تا زمان انقضای فایلها نیاز به ارسال درخواست جدید به سمت سرور نمی باشد:

در این حالت ارتباطی  بین مرورگر و سرور رخ نمی دهد و تنها مرورگر با خودش مشورت می کند:

مرورگر: تاریخ امروز قبل از تاریخ انقضاء (یعنی بطور مثال ۲۰ مارس) است؟
مرورگر: بله هنوز مهلت هست، در نتیجه به کاربر نسخه کش را  نشان می دهم.

  • روش Max-Age حداکثر سنروش تاریخ انقضا Expiresروش خوبی است، اما بهینه نیست زیرا در هر صورت می بایست تاریخ هرروز محاسبه شود. اما در روشmax-age header به مرورگر اعلام می کند که این فایل ظرف ۱ هفته از تاریخ امروز منقضی می شود، که ساده تر از تنظیم تاریخ انفضا می باشد.Max-Age برحسب ثانیه اندازه گیری می شود. در زیر چندین تبدیل واحد سریع آورده شده است:۱ روز در ثانیه = ۸۶۴۰۰
    ۱ هفته در ثانیه = ۶۰۴۸۰۰
    ۱ ماه در ثانیه = ۲۶۲۹۰۰۰
    ۱ سال در ثانیه = ۳۱۵۳۶۰۰۰ (به معنای زمان بی نهایت در اینترنت می باشد.)

  • روش Bonus Header عمومی و خصوصی

cache headers هرگز متوقف نمی شوند. گاهی اوقات سرور نیاز دارد بداند که چه زمانی منابع خاصی روی کش ذخیره شده است.

  • Cache-controlعمومی : به این معنی است که نسخه ذخیره شده توسط پروکسی ها و سایر سرورهای میانجی و هر کس می تواند آن را ببیند، ذخیره می شود.
  •  Cache-controlخصوصی : به این معنی است که نحوه نمایش فایل برای کاربران مختلف متفاوت است (مانند صفحه شخصی). مرورگر خصوصی کاربر میتواند آن را ذخیره کند، اما پراکسی نمی تواند.
    Cache-control عدم کش: به این معنی است که فایل نمی بایست ذخیره شود. این مورد برای نتایج جستجو مفید است که در آن URL به همان شکل ظاهر می شود اما محتوای صفحه ممکن است تغییر کند.

نکاتی از فعال سازی کش :

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

ابتدا اطمینان حاصل کنید که روی آپاچی دو مورد mod_headers  و mod_expires  فعال باشد:

… list your current modules…

apachectl -t -D DUMP_MODULES

… enable headers and expires if not in the list above…

a2enmod headers

a2enmod expires

فرمت عمومی برای تنظیم هدر هاست:

–     نوع فایل
–          Header / Expiration to set

منابع/فایل هایی که تغییرات کمتر دارند(تصاویر، پی دی اف و غیره) می بایست مدت زمان بیشتری ذخیره شوند. اگر فایلی نظیر لوگوی شرکت هرگز تغییر نکند، تاریخ انقضای آن را به مدت طولانی نظیر یک سال تعریف نمایید.
فایل لودر (index.html) را ذخیره نکنید، اما مواردی را که به صورت دائمی ذخیره می شوند را روی آن تعریف نمایید. کاربر همیشه فایل لودر را از سرور دریافت می کند، اما ممکن است قبلا منابع و فایل های مورد نظر خود را ذخیره کرده باشد.

نمونه هایی از کدهای cache در آپاچی:

Caching با روش  mod_expires + mod_headers

  • Caching با روش  mod_headers:

 

 

  • Caching با روش mod_expires

 

بررسی عملکرد وب و بهبود TTFB سایت

آستانه تحمل کاربران برای بارگیری صفحات وب سایت، کمتر از سه ثانیه می باشد. این آستانه تحمل در وب سایت دقیقا همان مسئله  Time To First Byte(ویا به اختصار TTFB) می باشد.از آنجایی که سطح تحمل ما برای انتظار پشت چراغ راهنمایی و رانندگی ویا مایکروویو ها، در حدود دو دقیقه می باشد، می توان نتیجه گرفت که زمان TTF،در جذب مشتری و سرعت بالای سایت یکی از عوامل مهم می باشد.

زمان انتظار TTFB چیست؟

هنگامی که بازدیدکنندگان، وب سایت شما را در Google جستجو می کنند، مرورگر وب آنها درخواست دریافت اطلاعات برحسب بایت را به سرور ارسال می کند. درواقع TTFB مدت زمانی برحسب میلی ثانیه می باشد که مرورگر، برای دریافت اولین بایت پاسخ از وب سرور، می بایست منتظر بماند.

زمان TTFB توسط گوگل Waiting نیز نامیده می شود و از زبان گوگل به شرح زیر توصیف میگردد:

مدت زمانی که در انتظار پاسخ اولیه از سمت سرور صرف می شود، که همچنین به عنوان TTFB نیز شناخته شده است. این زمان شامل مدت زمان رفت و برگشتی در ارسال یک درخواست به سرور و زمان صرف شده جهت ارائه پاسخ قطعی از سرور می باشد.

وب سایت هایی با زمان TTFB بالاتر بازدید کنندگان خود را نامیدخواهد کرد. اگر بیش از اندازه زمان نیاز باشد تا وب سرور شما اولین بایت درخواستی را ارسال کند، ممکن است دو مشکل زیر رخ دهد:

  • بازدید کنندگان وب سایت شما را ترک نموده و به سایت سایر رقبا مراجعه کنند.
  • رتبه SERP وب سایت شما کاهش می یابد، زیراکه گوگل معیار TTFB را در نظر می گیرد.

البته توجه داشته باشید که TTFB از معیار سرعت بارگذاری صفحات page load speed)) نظیر Google Page Speed متفاوت است. گوگل اظهار میکند که سرعت وب سایت(website speed) یک عامل موثر در رتبه بندی است، اما بین  رتبهGoogle PageSpeed  و رتبه بندی(Ranking) هیچ ارتباطی وجود ندارد.اما از طرفی این عامل بستگی به زمان دریافت بایت اول می باشد.

بهترین مدت زمان TTFB

به گفته گوگل، مدت زمانTTFB  وب سایت می بایست ۲۰۰ میلی ثانیه یا کمتر از آن باشد. اگر سایت شما خیلی کندتر از آن است، مانند ۵۰۰ میلی ثانیه یا بیشتر، می بایست اصلاح گردد.

بطورکلی بهترین سرعتTTFB  :

–  ۱۰۰ میلی ثانیه برای محتوای استاتیک (محتویاتی که در حال حاضر به عنوان فایل در سرور و بطور ثابت می باشد.)
–  ۲۰۰-۵۰۰  میلی ثانیه برای محتوای پویا (محتوا که از یک پایگاه داده و CMSها مانند WordPress ایجاد شده است.)

بررسی TTFB وب سایت

جهت بررسی میزان TTFB سایت، میتوانید از قابلیت TTFB در مرورگر خود استفاده نمایید. جهت اینکار وب سایت خود را باز نموده و سپس کلید F12 را بزنید. در پایین صفحه در پنجره باز شده در قسمت network می توانید TTFB را ملاحظه نمایید.

همچنین می توانید از ابزار های زیر نیز جهت بررسی مدت TTFB استفاده نمایید:

  • Google Chrome browser Inspect tool
  • Gtmetrix.com
  • Webpagetest.org – Website Performance and Optimization Test
  • Performance.sucuri.net
  • Tools.keycdn.com/performance

 

دلایل کند شدن TTFB

چهار دلیل عمده که باعث کند شدن TTFB می شوند، عبارتند از:

  1. ترافیک وب بالا
  2. مشکلات شبکه
  3. محتوای پویا:

– میزان مصرف فضا

– سرعت دیسک

– میزام مصرف RAM

– تنظیمات پایگاه داده

– سرعت پایگاه داده

  1. پیکربندی سرور:

– تنظیمات PHP / ASP

– تنظیمات پایگاه داده

و غیره.

شما نمی توانید ترافیک وب سایت یا مسائل مربوط به شبکه را تا حد زیادی برطرف کنید. با این حال، راه هایی جهت بهبود میزان TTFB ناشی از محتوای پویا و پیکربندی سرور وجود دارد.

 

چگونگی تاثیر محتوای پویا روی TTFB

محتوای پویا/دینامیک (که معمولا توسط وردپرس استفاده می شود) یکی از بزرگترین دلایل افزایش زمان TTFB است. همانطور که می دانیم اکثر صفحات در وب به طور پویا می باشند.

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

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

زمان پیدا کردن و دریافت محتوای مربوطه از پایگاه داده، گرفتن فایل ها و گنجاندن همه آنها با یکدیگر در صفحه سایت  می تواند به آسانی یک گلوگاه(bottleneck) ایجاد کند، مخصوصا اگر سرور برای چندین بازدید کننده در همان زمان کار کند.

 

بهبود TTFB وب سایت شما با قابلیت Caching

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

  • پلاگین های وردپرس: پلاگین هایی نظیر WP Super Cache به کش نمودن صفحات دینامیکی سایت کمک می کنند.
  • میزبانی وردپرس : برخی میزبانی های وردپرس می تواند توانایی هایی را که امکان بهبود TTFB سایت شما را فراهم می کند، به شما بدهد.
  • پیکربندی سرور: یک راه معمول برای قابلیت کش فایل ها ، پیکربندی فایل وب .htaccess می باشد( این مورد شامل محتوای پویا نمی شود.)

نتیجه گیری

جهت بهبود زمان TTFB، جزئیات زیادی برای بررسی وجود دارد. کسانی که از اقدامات لازم جهت بهبود TTFB سایت استفاده می کنند، از جایگاه رقابتی بهتری برخوردار هستند.