آموزش رفع خطای Enable Keep Alive
از سری مقالات آموزش کامل سایت gtmetrix به رفع خطای pagespeed سایت جی تی متریکس پرداختیم. در مقاله قبل به رفع خطای Defer parsing of JavaScript و Prefer asynchronous resources در سایت GTmetrix پرداختیم. امروز در بخش رفع خطاهای pagespeed به آموزش رفع خطای Enable Keep Alive خواهیم پرداخت. آموزش نحوه رفع ارور Enable Keep Alive با فعال سازی keep alive در سی پنل را نیز بیان خواهیم کرد.
لازم به ذکر است که این خطا بشدت روی سرعت سایت شما تاثیر میگذارد. بنابراین با رفع این خطا که بخشی از آن به سمت سرور بازمیگردد، سرعت سایت چندین برابر میشود. اگر در فکر افزایش سرعت سایت خود و به طبع آن بهبود سئوی سایت هستید در ادامه این مقاله با ما همراه باشید.
جهت بهبود سئوی سایت میتوانید مقالات طراحی سئو و بهینه سازی سایت و SEO چیست را مطالعه نمایید.
در این مقاله به موضوعات زیر خواهیم پرداخت :
1 خلاصهی از خطای Enable Keep-Alive
2 Keep Alive چیست
3 آیا Enable Keep Alive بصورت پیش فرض فعال است؟
4 چگونه Keep Alive را فعال کنیم
4.1 فعال سازی Keep Alive با استفاده از htaccess
4.2 فعال سازی Keep Alive در Apache
4.3 فعال سازی Keep-Alive در NGINX
4.4 فعال سازی Keep-Alive در Litespeed
خلاصهی از خطای Enable Keep-Alive
نام: Enable Keep-Alive
نوع: مربوط به سرور
اولویت: بالا
میزان سختی: راحت
میانگین امتیاز: 93%
Keep Alive چیست
Keep Alive نحوه ارتباط و درخواست بین سرور و مرورگر است. این موضوع بیان کننده این است که آیا مرورگر میتواند بیشتر از یک فایل را با یک درخواست از سرور بگیرد یا خیر.
طبیعتا برای باز شدن هر سایتی مرورگر درخواست هایی را برای سرور ارسال میکند و سرور نیز برای درخواست ها پاسخ بله یا خیر را ارسال میکند و بدین ترتیب فایل هایی که موجود باشد را سرور برای مرورگر ارسال میکند و سایت روی مرورگر باز میشود.
برای باز شدن هرصفحه وب سایت تعداد زیادی درخواست از سمت مرورگز به سمت سرور ارسال میشود که اگر تعداد و زمان ارسال و دریافت این درخواست ها زیاد باشد برای یک سایت فاجعه است و سرعت باز شدن سایت بسیار زیاد میشود.
در ادامه میخوانید
برای باز شدن صحیح هر سایتی باید تمام فایل های آن بصورت کامل و دقیق از سرور توسط مرورگر دریافت شود. در مرحله اول مرورگر فایل HTML را درخواست میکند. پس از آن به سراغ مابقی فایل ها میرود. فایل هایی مانند JS و CSS و تصاویری که داخل صفحات قرار دارد را فراخوانی میکند. دقیقا در این قسمت است که اهمیت Keep Alive مشخص میشود.
اگر Keep Alive فعال نباشد مرورگر نمیتواند با یک درخواست همه فایل ها را فراخوانی کند. بدین ترتیب مرورگر برای هر فایل مجبور است یک درخواست جداگانه ارسال نماید و باتوجه به اینکه سرور نیز باید برای هر درخواست یک پاسخ جداگانه ارسال نماید، زمان فراخوانی فایل ها زیاد میشود و سرعت سایت بشدت کاهش میابد. صفحات هر سایتی دارای تعداد زیادی فایل است که اگر برای هر کدام درخواست جداگانه ارسال شود قطعا باعث کاهش سرعت سایت خواهد شد.
حال در نظر بگیرید اگر Keep Alive فعال باشد مرورگر میتواند همه فایل ها را بصورت یکجا درخواست نماید و سرور نیز تمام فایل ها را با یک درخواست ارسال مینماید.
مثال تصویری از رفع خطای Enable Keep Alive
تصویر زیر قبل و بعد از آموزش رفع خطای Enable Keep Alive را نمایش میدهد.
تا اینجای کار متوجه شدیم که Keep Alive چیست و همیتن فعالسازی Keep Alive را متوجه شدیم. همانطور که میدانید در رفع خطاهای سایت GTMETRIX نوشته شده Enable Keep Alive، پس باید Keep Alive را فعال نمایید. اما چگونه ؟
مقاله آموزش رفع خطای Enable gzip compression در GTmetrix و فعال سازی gzip نیز بیار با اهمیت است که مطالعه آن خالی از لطف نیست.
آیا Enable Keep Alive بصورت پیش فرض فعال است؟
این موضوع که آیا Enable Keep Alive بصورت پیش فرض فعال است؟ بصورت پیش فرض فعال است یا خیر یک موضوع نسبی است و کاملا به هاست و فضای میزبانی که از آن استفاده مینمایید دارد. به همین خاطر بصورت دقیق نمیتوان در این مورد اظهار نظر کرد. اما موضوعی که مهم است این است که با ابزار gtmetrix یا page speed tool به راحتی میتوان متوجه این موضوع شد.
چگونه Keep Alive را فعال کنیم
Keep Alive با استفاده از HTTP هدر Connection: Keep-Alive فعال میشود. اگر Keep Alive فعال نشد، احتمالا HTTP Header های شما وضعیت connection: close را دارند. برای فعال شدن Keep Alive وضعیت آن را به connection: Keep-Alive تغییر دهید.
فعال سازی Keep Alive وابسته به سرور مورد استفاده توسط شما و دسترسی هایی است که دارید. به بیشتر موارد در ادامه خواهیم پرداخت. (هشدار: اگر متخصص نیستید لطفا این مورد را به یک فردی که تسلط کافی بر روی هاست و سرورها دارد بدهید.)
فعال سازی keep alive در سی پنل cpanel
فعال سازی Keep Alive با استفاده از htaccess
اگر به فایل config وب سرور خود دسترسی ندارید، می توانید Keep Alive را با استفاده از فایل .htaccess فعال کنید.
<ifModule mod_headers.c> Header set Connection keep-alive </ifModule>
افزودن کد بالا به فایل htaccess باعث میشود تا در header ها Keep Alive را به درخواست های شما اضافه کند، که البته بیشتر وب سرورها یا محدودیتهایی را تعیین کردن تا کد بالا را بازنویسی (override) میکند. لطفا توجه داشته باشید که ممکن است بعد از وارد کردن دستور بالا با ارور 500 روبهرو شوید و علت این است که سرور شما با دستور بالا سازگاری لازم را ندارد. فعال سازی keep alive در سی پنل به همین سرعت قابل انجام است.
فعال سازی Keep Alive در Apache
اگر به فایل پیکربندی Apache دسترسی دارید، می توانید Keep Alive را در آنجا فعال کنید. قسمت های مربوطه در زیر نشان داده شده اند.
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to “Off” to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 100
فعال سازی Keep-Alive در NGINX
مشکلات Keep Alive را میتوان با HTTPCoreModule برطرف کرد. دستور keep-alive-disable وجود دارد که باید مراقب آن باشید، اگر این دستور را مشاهده کردید، مطمئن شوید قبل از حذف آن دلیل غیر فعال بودنش توسط هاستینگ را میدانید.
فعال سازی Keep-Alive در Litespeed
Keep Alive به صورت پیشفرض فعال میباشد، اما ممکن است سرور شما از چیز دیگری به اسم smart keep-alive استفاده می کند. smart keep-alive یکی از تنظیمات داخل Litespeed است که به طور مشخصی برای وبسایتهای با حجم بالا مورد استفاده قرار میگیرد. هنگامی که این گزینه فعال باشد، در قسمت page speed tools گزینهای ظاهر میشود که نشان میدهد Keep Alive غیر فعال است. smart keep-alive فایل اولیه را با connection close در HTTP header درخواست خواهد کرد.
سپس فایلهای دیگر را با فعال کردن Keep Alive درخواست میکند. این گزینه باعث میشود هنگامی که درخواستهای زیادی وجود دارند، کاربران بیشتری بتوانند همزمان متصل شوند.
نکته: بجز در مواقعی که ترافیک سایت بالایی دارید، میتوانید smart keep-alive را در config غیر فعال کنید و هنگامی که این کار را انجام دادید تمام ارتباطات شما از Keep Alive استفاده خواهند کرد. اگر مطمئن نیستید که آیا برای شما از نوع smart هست و یا یقین دارید که این ویژگی غیرفعال است بهتر است به هاستینگ خود تیکت ارسال نمایید.
جمعبندی
با آموزش های بالا سعی برآن داشتیم تا یکی از مهمترین فاکتورهای اساسی در افزایش سرعت سایت که آموزش نحوه رفع ارور Enable Keep Alive میباشد را توضیح دهیم.
آموزش رفع خطای Minify CSS و آموزش رفع خطای Minify HTML را مطالعه کردهاید ؟؟؟
این جلسه از آموزش رفع خطاهای GTMetrix هم به پایان رسید. با ما همراه باشید تا به آموزش رفع مابقی خطاهای GTMetrix بپردازیم.
آموزش بعدی : آموزش رفع خطای Inline small CSS و Inline small JavaScript در pagespeed گوگل در سایت GTMetrix