Keep-Alive نحوه درخواست بین سرور و مرورگر کاربر است که میگوید: مرورگر میتواند بیش از یک فایل را بگیرد یا نگیرد. پی سی اسکریپت تلاش نموده است تا در این آموزش دانستنی های این مورد را شرح دهد.
طبیعتا مرورگر، برای نشان دادن صحیح صفحات سایت ما باید همه فایلها را دریافت نماید. در قدم اول برای باز کردن یک سایت مرورگر فایل HTML را دریافت کرده و آن را میخواند. سپس مرورگر موارد دیگری مانند CSS، JavaScript و تصاویر را که فایل HTML به آنها اشاره میکند را درخواست میکند. اگر Keep Alive فعال نباشد این مفهوم را میرساند که مرورگر بیش از یک فایل را در آن واحد نمیتواند درخواست کند آن موقع مرورگر برای دریافت همه فایلها هر بار درخواست جداگانه ارسال میکند و اگر سرور هر بار جداگانه پاسخ بدهد حاصل آن، زمان زیادی برای دریافت تمام فایلها تلف خواهد شد
تعریف آکادمیک Keep Alive HTTP این است: “روشی که اجازه میدهد درخواست HTTP در کانکشن tcp به جای باز کردن درخواست جدید، هر چه فایل میخواهد دریافت کند.” به زبان سادهتر،بستری را فراهم میکند تا ارتباطی بین وب سرور و مروگر برقرار شود و اجازه میدهد که بیش از یک فایل را در آن واحد مرورگر دریافت کند.گاهی در برخی از مقالات Keep Alive به عنوان persistant connection هم صدا زده میشود.
فعال سازی Keep-Alive
· فعال سازی 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 در Litespeed
Keep Alive به صورت پیشفرض فعال میباشد، اما ممکن است سرور شما از چیز دیگری به اسم smart keep-alive استفاده می کند. smart keep-alive یکی از تنظیمات داخل Litespeed است که به طور مشخصی برای وبسایتهای با حجم بالا مورد استفاده قرار میگیرد. هنگامی که این گزینه فعال باشد، در قسمت page speed tools گزینهای ظاهر میشود که نشان میدهد Keep Alive غیر فعال است.
smart keep-alive فایل اولیه را با connection close در HTTP header درخواست خواهد میکند. سپس فایلهای دیگر را با فعال کردن Keep Alive درخواست میکند. این گزینه باعث میشود هنگامی که درخواستهای زیادی وجود دارند، کاربران بیشتری بتوانند همزمان متصل شوند.