اگر از همراهان همیشگی پرشین تولز هستید، حتماً مقاله قبلی در مورد رفع خطاهای سایت به کمک GTmetrix را خواندهاید! در این مقاله هم قصد داریم به بررسی ادامه این بحث بپردازیم تا بتوانید با افزایش سرعت سایت، وضعیت سئوی سایت خود را بهبود ببخشید و رضایت کاربران را هم جلب کنید.
رفع خطای Make fewer HTTP requests در GTmetrix
وقتی درخواست بازدید از سایت به مرورگر داده میشود، مرورگر توسط شرکت ISP که ارائه دهنده اینترنت شما است شروع به یافتن IP سرور میکند و بعد از این مرحله هم سایت شما که با دامنه قرار دارد این درخواست را دریافت کرده و بعد از بررسی درخواست شروع به پاسخ دادن میکند که در اینجا پاسخ دادن همان لود و ارسال فایلهایی است که در یک صفحه قرار دارند. در این مرحله درخواست به صورت HTTP ارسال میشود که در مرحله اول صفحه به صورت HTML بارگیری شده و بعد از کامپایل شدن و بررسی این سند HTML شروع به لود فایلها و محتوای داخل آن میکند. در این مرحله فایلهای مختلفی مثل جاوا اسکریپت، css، تصاویر، فونتها و… شروع به بارگذاری میکنند که برای هر کدام از این فایلها درخواستی به سرور ارسال خواهد شد. بنابراین میشود نتیجه گرفت که با بالا بودن این تعداد درخواست HTTP «در لود شدن سایت هم بیشتر میشود و اگر این دیدگاه را در سطح وسیعتری نسبت به تعداد بازدیدکنندگان یک سایت در نظر بگیریم، میتوان گفت در یک شبانه روز که چند هزار نفر از سایت بازدید میکنند، در مجموع ممکن است تعداد درخواستهای HTTP از سرور در حد میلیونی باشه که اگر این تعداد درخواست برای هر صفحه بالا باشه، باعث درگیر شدن بیشتر سرور خواهد شد. برای همین سرور با بالا رفتن تعداد درخواست همزمان ممکن است نتواند پاسخگو باشد و به مرور که تعداد درخواست همزمان بیشتر هم میشود، سایت کندتر عمل میکند که اگر این مسئله به همین صورت پیش برود، در نهایت سایت تا زمانی که درخواستها قابل پاسخگویی نباشد، از دسترس خارج میشود! پس باید کاری کنیم که این تعداد درخواست رو به کمترین حد ممکن برسونیم و این کار هم با ترفندهایی به کار میرود؛ اگر موافق باشید، در ادامه به بررسی آن میپردازیم.
- چکار کنیم موتورهای جستجو صفحات وبسایتمان را راحتتر پیدا کنند؟
- اولین روش) ادغام کردن فایلها بهترین روشی که میتواند در سطح خوبی پاسخگو باشد، این است که فایلهای مشترک را با هم ادغام کنید. یعنی فایلهای CSS، JS با هم ترکیب شوند و تا جای ممکن در قالب یک فایل قرار بگیرند. در این صورت به جای آن که چندین درخواست برای بارگذاری کلیه فایلهای استایل سایت که به صورت CSS هستند ارسال شود، یک بار این درخواست ارسال شده و از طریق یک فایل کل محتوای مربوط به فایل CSS سایت دریافت میشود.
- دومین روش) استفاده از Minimize request size استفاده از این روش به این معنی است که حجم فایلها را با استفاده از تغییرات کدنویسی یا ابزار آنلاین که وجود دارند به کمترین حد ممکن برسانید. در این صورت فایلها از حجم کمتری برخوردار خواهند بود و زمانی که درخواستی برای لود فایل ارسال میشود نسبت به حجم اولیه سریعتر بارگذاری شده و سرور میتواند بعد از آن که فایل را به صورت کامل در اختیار مرورگر قرار داد، به دنبال درخواستهای دیگری برود.
-
بررسی مانیتورینگ سایت و اهمیت آن - سومین روش) استفاده از Combine images using CSS sprites اگر تعداد تصاویری که در سایت به صورت ثابت هستند و عموما شامل شبکههای اجتماعی یا لینک کردن به صفحه خاصی هستند را با هم ترکیب کنیم، با ترکیب کردن آنها در قالب یک تصویر با استفاده از CSS آنها را با ساختار بهینهتری نمایش دهیم! در این حالت وقتی یک تصویر را نمایش میدهید، میتوانید به کمک CSS ناحیه دلخواه را برای نمایش تصاویر کوچکتر مشخص کنید تا سایر بخشها مخفی باشند.
- چهارمین روش) استفاده از کش سایت استفاده از کش هم میتواند انتخاب خوبی باشد تا برای مدت زمانی که مشخص میکنید هر درخواستی که برای فایلها ارسال میشود به جای لود مستقیم از طریق سرور، از حافظه کش شده مرورگر کاربر دریافت شود. در این صورت تا زمانی که فایلها به صورت کش شده در سیستم کاربران قرار دارند درخواستی برای لود فایل از سرور ارسال نخواهد شد و این مسئله میتواند به بهترین شکل ممکن تعداد درخواست HTTP در سایت را کم کند.
- پنجمین روش) استفاده از Inline small CSS and JavaScript در این حالت اگر فایلهای CSS و JS دارید که دارای کدهای کوتاه و حجم کمتری هستند، میتوانید به جای استفاده جدا ، آنها را با هم ادغام کنید و یا این که به صورت درون خطی در هر بخش از سایت که نیاز دارید، استفاده کنید. به عنوان نمونه ممکن است شما در یک برگه خاص مثل صفحه فرود از کدهای CSS و JS استفاده کنید که در هیچ صفحه دیگهای از سایت به آنها نیازی ندارید. بنابراین میتوانید این کدها را مستقیماً داخل همان صفحه وارد کنید. در این صورت دیگر فایلهای استایل و جاوا اسکریپت که به صورت ثابت هستند حجم بالایی نخواهند داشت.
- چگونه زمان Downtime سایت خود را کاهش دهیم؟
- ششمین روش) لود فایلها JS در فوتر وقتی وارد سایتی میشوید که از جاوا اسکریپت استفاده کرده، مرورگر باید همه فایلهای JS را بخواند و بعد از اجرا کردن آنها، بر اساس کدنویسی که این فایلها دارند سایت را به شما نشان می دهد. در برخی موارد سایتها به کمک همین جاوا اسکریپت سعی میکنند تغییراتی را در فایلهای استایل دهند که در این صورت اگر فایل جاوا اسکریپت زودتر بارگذاری شده باشد، برای اجرای دستوراتی که به آن محول شده باید فایل CSS زودتر از آن لود شده باشد. در غیر این صورت این کار به درستی انجام نمیگیرد و بعد از لود فایل css فایل جاوا اسکریپت باز ممکن است از سرور درخواست شود تا دستوری که برای تغییر فایلهای استایل دارد را اجرا کند که این حالت باعث دو بار درخواست HTTP برای فایل جاوا اسکریپت خواهد شد.
در مقاله بعدی به ادامه این بحث میپردازیم.