برای رفع خطای Make fewer HTTP requests در جی تی متریکس باید ۸ خطای دیگر را هم بررسی کنید، به عبارت دیگر این خطا به خطاهای دیگر سایت GTmetrix.com وابسته است. نحوه کاهش تعداد درخواست HTTP یکی از مهمترین چالش ها در زمینه سرعت سایت است. ما در این مقاله آموزش چگونگی پایین آوردن HTTP requests را فراخواهیم گرفت و به این واسطه ارور Make fewer HTTP requests در YSlow جی تی متریکس هم نیز رفع میشود. برای حل این خطا با میزفا همراه باشید.
سرفصلهای پست
- 1 مقدمه ارور Make fewer HTTP requests در YSlow
- 2 درخواست اچ تی تی پی HTTP requests چیست
- 3 خطاهای مربوط به درخواست HTTP برای رفع مشکل Make fewer HTTP requests
- 3.1 رفع خطای Minimize request size
- 3.2 رفع خطای Inline small CSS and JavaScript
- 3.3 رفع خطای Combine images using CSS sprites
- 3.4 رفع خطای Defer parsing of JavaScript
- 3.5 رفع خطای Serve resources from a consistent URL
- 3.6 رفع خطای Enable Keep Alive
- 3.7 رفع خطای Leverage browser caching
- 3.8 سایز موارد در کاهش درخواست های HTTP
- 4 افزونه مفید وردپرس جهت کاهش HTTP requests
مقدمه ارور Make fewer HTTP requests در YSlow
سلام دوستان عزیز، من پوریا آریافر هستم متخصص سئو و در ادامه آموزش افزایش سرعت سایت با ابزار gtmetrix از مقالات سئو در خدمت شما هستیم. در این مقاله قصد داریم درباره ارور Make fewer HTTP requests صبحت کنیم و بررسی کنیم ممکن است شما با خواندن این مقاله و صرف وقت بتوانید به راحتی این ارور را رفع کنید و گاهی هم ممکن است به راحتی نتوانید و نیاز به برنامه نویسی باشد. با این حال ما سعی میکنیم هر آنچه را که میدانیم را به شما بگوییم و در ادامه مقاله میزفا منظور از خطا HTTP request چیست و اینکه رفع آن چگونه باعث بهینه سازی سرعت سایت ما میشود را خواهیم گفت.
خلاصهای از خطای Make fewer HTTP requests در جی تی متریکس
اولویت: پایین
میزان سختی: راحت
میانگین امتیاز: 99%
درخواست اچ تی تی پی HTTP requests چیست
اگر دقت کرده باشید در سایت GTmetrix.com مشکل درخواستها در Yslow را با خطای Make fewer HTTP requests نشان میدهد که کلمه fewer به معنای کمتر است کلمه request هم به معنای درخواست است.
خطای Make fewer HTTP requests اشاره میکند که درخواست HTTP کمتر بسازید، توجه داشته باشید هر سه عبارت زیر به یک معنا است و یک هدف دارند:
- Make fewer HTTP requests – درخواست HTTP کمتر بسازید
- Reduce HTTP requests – کاهش درخواست HTTP
- Minimize HTTP requests – به حداقل رساندن درخواست HTTP
وقتی کاربری میخواهد توسط مرورگر خود مثلا وارد سایت میزفا شود باید آدرس سایت mizfa.com را وارد نمایید، وقتی آدرس را وارد میکند مرورگر یک درخواستی ارسال میکند برای پیدا کردن ای پی سایت میزفا به کمک ISP های منطقه و جهانی، بعد از دریافت پاسخ و باز بودن پورتهای لازمه، مرورگر در اینجا تعدادی درخواست HTTP ارسال میکند تا بعد از پاسخ سرور بتواند سایت را برای کاربر نشان دهد، به اولین بایت از پاسخی که سرور به مرورگر ارسال میکند Time to First Byte یا به اختصار TTFB گویند. (پیشنهاد میشود در جهت بهینهسازیسرعت وب سایت خود حتما مقاله TTFB چیست را بخوانید تا به نکات جالب و کلیدی دست یابید)
هر چه تعداد درخواست های HTTP بیشتر باشد زمان زیادی برای ردوبدل کردن اطلاعات بین سرور و مرورگر به طول میانجامد و این باعث میشود شما در سایت جی تی متریکس با ارور Make fewer HTTP requests روبهرو شوید.
درخواست های http شامل
- عکسها
- فایلهای استایل سی اس اس (CSS)
- فایلهای جاوااسکریپت (JS)
و … میتواند باشد.
شاید باید گفت که مهمترین روش برای بهبود کلی تعداد درخواستها و کاهش آنها ادغام اصولی فایلها میباشد که مستقیم بر روی تعداد درخواست های HTTP اثرگذار است.
ارور Make fewer HTTP requests در کمتر سایتی سبز رنگ است چرا که برای رفع این خطا باید خطاهای بسیاری را رفع کنید و برای همین ما خطاهایی که به شکل مستقیم یا غیرمستقیم بر روی بهبود درخواستهای HTTP تاثیر گذار هستند را به ترتیب اولویت قرار دادهایم.
خطاهای مربوط به درخواست HTTP برای رفع مشکل Make fewer HTTP requests
-
رفع خطای Minimize request size
ارور Minimize request size دقیقا همانند ارور Make fewer HTTP requests هست صرفا نام آنها فرق دارد و آنکه اولی مربوط به گوگل میباشد و خطای fewer HTTP مربوط به یاهو است. درحالی که هر دو خطا به یک هدف اشاره میکنند ولی در اکثر موارد Minimize request size سبز رنگ است و fewer HTTP قرمز رنگ. به هرحال با رعایت و رفع فاکتورهای Minimize request size میتوان تا حد زیادی باعث بهبود خطای fewer HTTP شد. برای توضیحات بیشتر بر روی نام خطا کلیک کنید.
-
رفع خطای Inline small CSS and JavaScript
این خطا میگوید اگر فایلهای CSS و یا فایلهای JS که دارای حجم کوتاه هستند را در یک خط قرار دهید، در اینجا inline به معنای قرار دادن فایلهای CSS کوچک در یک خط است به عبارت دیگر منظور این خطا این است که فایلهای CSS و JS کوتاه را ادغام کنید. رفع این ارور کمک بسیاری به شما در جهت رفع مشکل Make fewer HTTP requests میکند. برای توضیحات بیشتر و رفع آن بر روی نام خطا کلیک کنید.
-
رفع خطای Combine images using CSS sprites
اگر تعداد عکسهای کوچک در سایت خود زیاد باشد به مراتب تعداد درخواستها هم بیشتر و درگیری سرور هم بالا میرود، در روش CSS sprites با ترکیب تمام تصاویر در یک عکس و درج مختصات به آن به کمک CSS از قسمتهای مختلف عکس در مکان دلخواه استفاده میکنیم، در این روش تنها یک درخواست برای یک تصویر به سرور ارسال میشود ولی چندین بار از عکس در قسمتهای مختلف قالب استفاده میشود. با انجام این روش سرعت وب سایت بسیار بیشتر میشود. برای توضیحات بیشتر بر و حل این مشکل روی نام خطا کلیک کنید.
-
رفع خطای Defer parsing of JavaScript
هنگام بارگذاری صفحهی از سایت، مرورگر کاربر بایستی محتوای همه فایلهای جاوا اسکریپت را خوانده و اجرا کند، که این کار مسلماً زمان بر خواهد بود. برای همین پیشنهاد میشود تا فایلهای جاوا اسکریپت را در پایین صفحه فراخوانی کنید تا زمان بارگذاری اولیه صفحه وبسایتتان را کاهش دهید، و اگر چنین نباشد تعداد درخواستهای اولیه HTTP بالا رفته و سایت نیز به شکل سریع برای کاربر لود نمیشود. برای کسب اطلاعات بیشتر و نحوه برطرف کردن این خطا بر روی نام آن کلیک کنید.
-
رفع خطای Serve resources from a consistent URL
این خطا وقتی رخ میدهد اگر شما دو عکس یکسان را با دو آدرس متفاوت در صفحهای از سایت خود بارگذاری نمایید، این عمل باعث میشود که تعداد درخواستهای سمت سرور بالا رود و وقتی درخواستهای HTTP افزایش یابد، سرور بیشتر درگیر پاسخ میشود. برای توضیحات بیشتر بر روی نام خطا کلیک کنید.
-
رفع خطای Enable Keep Alive
اگر Keep Alive فعال نباشد این مفهوم را میرساند که مرورگر بیش از یک فایل را در آن واحد نمیتواند درخواست کند آن موقع مرورگر برای دریافت همه فایلها هر بار درخواست جداگانه ارسال میکند و اگر سرور هر بار جداگانه پاسخ بدهد حاصل آن، زمان زیادی برای دریافت تمام فایلها تلف خواهد شد. درواقع رفع این خطا باعث بهبود درخواست های HTTP میشود و اجازه میدهد در یک واحد از زمانی در قالب یک درخواست، چند درخواست دیگر هم بفرستد. برای توضیحات بیشتر بر روی نام خطا کلیک کنید.
-
رفع خطای Leverage browser caching
فعال سازی کش هم بسیار میتواند در کاهش تعداد درخواستها موثر باشد ولی نه برای کاربرانی که اولین بار از سایت شما بازدید میکنند، قطعا شما عکسها و فایلهایی مشترک در بین صفحات خود دارید و اگر کاربر قصد داشته باشد در وب سایت شما وبگردی بکند باید طوری تنظیم کنید که این فایلهای مشترک در بین صفحات هر بار نخواهد درخواست سمت سرور ارسال کنید و از آن بخواهد، با کش کردن چنین فایلهایی بازدیدهای دوباره درخواستهای کمتری دارند و مرورگر قبل از درخواست HTTP به کش لوکال یا محلی خود نگاه میکند و اگر در آنجا کش شده باشد دیگر درخواستی ارسال نمیکند. برای توضیحات بیشتر بر روی نام خطا کلیک کنید.
-
سایز موارد در کاهش درخواست های HTTP
استفاده از CDN
استفاده از حالت تنبل فایلها
غیرفعال کردن یا حذف کردن پلاگینها، اسکریپتها و کدهایی که لازم نیست و در سایت غیرضروری هستند.
تغییر پلاگینها، اسکریپتها و کدهایی که به شکل فلهای درخواستهای HTTP نیز ارسال میکنند
افزونه مفید وردپرس جهت کاهش HTTP requests
برخی از پلاگینهای مفید مخصوص وردپرس برای رفع مشکل Make fewer HTTP requests به شما کمک میکند ولی بدانید که باید تست کنید و ممکن است یک افزونه وردپرس برای سایت میزفا خوب باشد ولی برای شما مشکل ساز شود، لیست افزونه ها:
- JCH Optimize
- دانلود نسخه اورجینال WP Rocket
- Autoptimize
- WP Fastest Cache
- W3 Total Cache
- WP Super Minify
- PageSpeed Ninja
- Speed Booster Pack
- LiteSpeed Cache
البته ما در دوره آموزشی بهبود سرعت وبسایت نزدیک به ۸ ساعت به صورت کامل درباره این موارد صحبت کردیم.
پایان
آیا شما افزونه خوب میشناسید؟ لطفا جهت غنی شدن و کمک به سایرین در نظرات معرفی کنید.
به پایان مقاله حل مشکل Make fewer HTTP requests از دوره آموزش جی تی متریکس رسیدیم و امیدواریم در این آموزش seo که باعث افزایش سرعت سایت و افزایش رتبه در سرچ گوگل میشود، کمک شایانی کرده باشیم، من پوریا آریافر اینجا هستم تا اگر سوالی داشتید پاسخگوی شما عزیزان باشم. پس حتما در نظرات درباره مشکلات و خطاهای سایتتان پیغام ارسال کنید.
در جلسه بعد به معرفی خطای Make JavaScript and CSS external میپردازیم. با ما میزفا همراه باشید.
16 پاسخ
سلام واقعا از سایت خوبتون ممنونم . واقعا توضیحات خیلی خوب و راهکارهای خیلی دقیقی برای رفع ارورهای GTMetrix دادید من خیلی از مشکلاتم را حل کردم. من تعداد request هامو از 168 به 96 رسوندم افزونه راکت خیلی کمکم کرد و سرعتم 10 ثانیه شد. فقط js ها را ترکیب نکردم.
– میخواستم بدونم در کنار افزونه راکت از افزونه LiteSpeed Cache هم می تونم استفاده کنم؟
– افزونه LiteSpeed Cache میتونه بازم تعداد requestهای منو کاهش بده؟
سلام الهام.
پیشنهاد میکنم از یک افزونه استفاده کنید و این دو افزونه در کنار هم جالب نیست.
یک مقاله داریم درباره بهترین پلاگین های افزایش سرعت ، میتونه برای شما مفید باشه.
سلام
من هم با این خطا مواجه شدم منتهی در قسمت توضیح خطا این عبارت نوشته شده
This page has 10 external stylesheets. Try combining them into one.
من نمیدونم باید چه کار کنم.
ممنون میشم راهنمایی کنید.
سلام سجاد.
موردی که اشاره کردی مربوط به رفع خطای Inline small CSS and JavaScript هست که من یک مقاله جدا ازش داریم در این مقاله هم لینکش کردم. اونو بخون
با سلام و خدا قوت
من jetpack را نصب کردم آیا بایستی یکی از افزونه های بالا را نیز نصب کنم یا خیر ؟
ممنون از اطلاعات با ارزش شما
سلام امیر جان.
افزونه jetpack ربطی به این موارد نداره. البته فکر نکنم شما بتونید از بخش حرفه ای این افزونه در ایران استفاده کنید مگر خارج از ایران باشید.
سلام
چگونه می توانم مثل وب سایت شما در وردپرس از چه افزونه استفاده کنم که عکس بعد از آمدن کاربر به صفحه لود بشه براش
سلام محمد جان. مقاله لود تنبل عکس رو مطالعه کن.
سلام برای جوملا پلاگینی هست که به کاهش این ارور و تعداد آن کمک کند؟
سلام دوست عزیز. اگر توجه کرده باشید در این مقاله به معرفی ۸ خطای دیگه پرداخته شده که اگر این ۸ خطا رفع بشن شما میتونید تعداد درخواست های http کمتر کنید. توی این ۸ خطا اگر با افزونه ای از جوملا کار کرده باشیم معرفی شده. پیشنهاد میشه ۸ مقاله رو یک بررسی کنید.
شاد و پیروز باشید.
مطالب بسیار مفید و کاربردی دارید از اینکه این مطالب را تهیه میکنید و در اختیار عموم قرار میدهید صمیمانه از شما متشکریم
سلام. خواهش میکنم دوست عزیز. ممنون از حضورتون
بسیار عالی و مفید ممنونم دوست عزیز
خواهش. پایدار باشید.
خیلی عالی و کم نظیر، با سپاس از زحمتی که به خاطر این مجموعه پست های خیلی خوب gtmetrix کشیده اید.
سلام، خواهش میکنم دوستم، خوشحالم مفید بوده