شایان داودی - Shayan Davoodi

سلام من شایان داودی هستم.

ممنون که در وبلاگم دور میزنی. خوش بگذره.
تاثیر سرعت باز شدن سایت در رتبه و سئو سایت

تاثیر سرعت سایت بر سئو

تاثیر سرعت سایت؟ بر سئو؟ اصلا چرا باید تاثیر داشته باشه؟ سئو چه ارتباطی با سرعت باز شدن سایت داره؟ مسابقس مگه؟ :)

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

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

بریم سر اصل مطلب:

چطوری میشه که با بالا بردن سرعت سایت، در سئو موفق تر بود؟

1- اولین و مهم ترین عامل: TTFB

TTFB چیه؟ چی شده؟

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

سخته؟

سادش میشه این:

دیدی وقتی که توی مرورگر گوگل کروم، آدرس صفحه ای رو میزنی اولش اینوری میچرخه؟

قبل از ارسال first byte

از اون لحظه ای که توی تب مورد نظر، شروغ میکنه به اینطوری چرخیدن تا وقتی که اینطوری میشه

بعد از ارسال first byte

زمانی که طول میکشه رو میگن TTFB. یعنی Time To First Byte

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

چطوری TTFB رو کمتر کنیم؟

مهمترین مسائلی که توی TTFB تاثیر دارن، سرعت و کیفیت هاست سایتتون و بهینه بودن اسکریپت و افزونه هایی هست که استفاده میکنین.

بعضی از افزونه ها هستن که به صورت طبیعی، این زمان رو افزایش میدن.

مهم ترین اونا عبارتند از:

  • بعضی از افزونه های اشتراک گذاری توی شبکه های اجتماعی: اینا چون موقع لود باعث میشن که یه اسکریپتی از یه سایت دیگه ( مثل فیسبوک و تویتر ) لود بشه، زمان TTFB رو افزایش میدن. راه حل؟ بعضیاشون هستن که همین که روشون کلیک میشه تازه اون اسکریچت رو لود میکنن و این باعث میشه روی TTFB تاثیر منفی نزاره.

فعلا همین یادمه :)

در کل با داشتن یه هاست بهتر و استفاده از افزونه های بهینه و قالب های استاندارد برای سایت، میشه به زمان مناسبی رسید.

در این باره یه مقاله خوب توی سایت استوری هست.

2- بهینه سازی تصاویر سایت: کاهش حجم  عکس های سایت بدون افت کیفیت

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

به دو روش میشه این کار رو کرد. نگم 2 روش، بهتره بگم برای این کار باید 2 راه رو رفت:

  1. کوچیک کردن سایز عکس ها: یه عکس هرچی سایزش کوچیکتر باشه حجم کمتری داره
  2. کم کردن حجم بدون کاهش سایز با استفاده از نرم افزارایی که هست. از جمله اونا به Photoshop و Riot اشاره میکنم. خودم شدیدا طرفدار دومی هستم خیلی ساده و سبکه.

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

3- کم کردن حجم فایل های CSS و JS و ترکیب اون ها

هر سایتی یا بهتره بگم هر قالب سایتی، برای خودش یه سری فایل های CSS داره که در واقع شکل و شمایل اون رو ایجاد میکنن و همچنین تعدادی فایل JS داره که عملکرد ظاهری سایت رو مشخص می کنند.

هر کدوم از فایل های CSS و JS دارای کد هایی هستند برای خودشون و نشون دهنده بخشی از عملکرد صفحه هستن.

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

برای این کار میشه:

  • فاصله های اضافی رو پاک کرد. این فاصله ها شامل خط های اضافی و همچنین فضای خالی یا همون اسپیس های خالی هستن که میتونیم با پاک کردن اونا حجم فایلا رو کمتر کنیم.
  • از دستورات خلاصه تر استفاده کرد. مثلا به جای

margin-top: 10px; margin bottom: 10px; میشه نوشت

margin: 10px 0;

یا بازم بهتر میشه نوشت

margin:10px 0;

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

کار دیگه ای که میشه انجام داد، ترکیب کردن این فایلاس. فرض کنید یه صفحه دارای 2 تا فایل CSS باشه یکی به اسم style.css و دیگری master.css. میشه کد های این دو تا فایل رو یکی کرد و در یه فایل دیگه پشت سر هم نوشت و به این ترتیب، تعداد درخواست ها به سرور کمتر میشه و صفحه کمی زودتر لود میشه.

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

4- ترکیب تصاویر پس زمینه در یک فایل

این کارم مثل بخش قبلی باعث میشه که تعداد درخواست ها به سرور کمتر بشه.

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

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

حالا این فایل رو هم ببینید: 

sprite file

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

چطوری از این استفاده میشه؟

یه کمی CSS باید بدونی.

توی این حالت، هر جا هر کدوم از بخش های این عکس رو بخوای نشون بدی باید به اون المان، یه background بدی و با استفاده از position بهش بگی که کجای این عکس رو نشون بده تا بخش مورد نظر نشون داده بشه.

یه مثال

فرض کنید از اون عکس بالا، میخوام اون بخش سبد خرید رو نشون بدیم.

استایلی که مینویسیم اینه:

background: url(http://img.bamilo.com/ui/icon/sprite.png) no-repeat -22px -68px;

 

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

5- استفاده از CDN

هرچی میایم پایین تر، تاثیر موارد کمتر میشه. ولی اینیکی تاثیر جالبی داره.

CDN مخفف شبکه تحویل محتوا یا شبکه توزیع محتواست. CDN ها وظیفه دارن که محتوای ثابت و استاتیک سایت ( مثل فایل های تصویر، CSS و JS و از این قبیل ) رو روی سرور های خودشون کش Cache کنن و نگه دارن و هر موقع یه بازدید کننده ای صفحه رو باز کرد، به جای اینکه اون فایل از سرور براش ارسال بشه، از سرور CDN براش فرستاده میشه که سرعت بالایی داره و در نتیجه فشار کمتری به هاست سایت میاد.

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

مثلا اگه یه نفر از آمریکا وارد سایت شما بشه، CDN فایل های مورد نظر رو از نزدیک ترین سرور به آمریکا براشون میفرسته و اگه کسی از ایران باز کنه، فایل های رو از نزدیک ترین سرور به ایران براشون میفرسته که باعث میشه اون فایلا زودتر بهش برسن.

CDN های رایگان خوبی وجود دارن که میتونید ازشون استفاده کنید.

Cloudflare

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

CDN های دیگه ای که هستن

JSDeliver

Coral CDN

 

دنبال کردن

Copyright © Shayan Davoodi, 2016-2017
کلیه حقوق سایت شایان داودی متعلق به خودتونه :)

Search