یکی از خطاهایی که هنگام کار کردن با اسکریپتهای PHP ممکن است شما هم آن را تجربه کرده باشید، خطای PHP Memory Limit است. همانطور که از عنوان این خطا پیداست، وقتی یک برنامهٔ PHP محدودیتی برای استفاده از Memory یا حافظهٔ اصلی سرور داشته باشد، این خطا بروز میکند. معمولاً مدیر سرور یا مدیر سایت این محدودیت را تنظیم میکند تا اسکریپت PHP اقدام به مصرف تمامی منابع RAM نکند؛ که در این صورت مشکلات ناخواستهٔ دیگری رخ خواهد داد. عمدتاً اسکریپتهای سنگین و یا آنهایی که به درستی برنامه نویسی نشدهاند، ممکن است از حافظهٔ بیشتری استفاده کنند.
پس یک بخش از اعمال محدودیت PHP Memory در سطح کل سرور است که به دست مدیر کل سرور انجام میشود. اما بخشی هم در دست مدیر سایت قرار دارد. یعنی شخصی که یک حساب سی پنل و یا دایرکت ادمین در اختیار دارد تا بتواند سایت خود را مدیریت نماید. در این سطح کاربر قادر نیست بیشتر از میزانی که مدیر سرور تنظیم کرده است، مقداری را برای PHP Memory Limit تنظیم کند. اما به هر حال باز هم با در نظر گرفتن میزان مصرف بهینهٔ اسکریپت باید PHP Memory Limit مناسبی را تنظیم نمود.
حالا برویم سراغ نحوهٔ انجام این کار. این کار را باید از داخل کنترل پنل فضای میزبانی خود (سی پنل، دایرکت ادمین و ...) انجام دهید. مثلاً در سی پنل باید بخشی با نام Select PHP Version یا MultiPHP INI Editor داشته باشید. اگر هاست شما از نوع کلود لینوکس باشد، مورد اول و اگر نباشد مورد دوم را پیدا کنید.
در مورد Select PHP Version پس از بارگذاری کامل این صفحه، باید روی سربرگ Options کلیک کنید. سپس به دنبال گزینهای با نام memory_limit بگردید و از فهرست کشویی روبروی آن مقداری را انتخاب کنید. تغییر ذخیره خواهد شد. حالا اگر این بخش برای شما ظاهر نبود، از سربرگ اول یک نسخهٔ PHP به غیر از نسخهٔ پیش فرض را انتخاب کنید و سپس به سربرگ Options بروید.
در رابطه با MultiPHP INI Editor در سیپنل باید ابتدا از سربرگ Basic Mode یک دامنه یا مسیر از هاست خود را انتخاب کنید. حالا گزینههای تنظیماتی برای همان مسیر ظاهر میگردد. سپس گزینهٔ تنظیماتی memory_limit در خدمت شماست. پس از اعمال تغییرات که حتماً باید به همراه واحد حافظه (M یا G) به صورت چسبیده به عدد وارد شود، روی Apply کلیک کنید.
برای دیگر کنترل پنلها مثل دایرکت ادمین و پلسک هم همین داستان وجود دارد. ولی ممکن است نام هر مرحله کمی متفاوت باشد.
به عنوان نکتهٔ آخر این را هم بدانید که متناسب با هر بستهٔ فضای میزبانی که خریداری میکنید، ممکن است میزان خاصی محدودیت از طرف مدیر سرور روی هاست شما تنظیم شده باشد که تنها با ارتقاء آن به طرح بالاتر و یا هاست پر بازدید این محدودیت هم افرایش مییابد. اسکریپتهایی مثل ووکامرس و یا دیگر فروشگاهسازها به میزان Memory بسیار زیادی نیاز دارند. پس از همان ابتدا متناسب با آنها یک هاست انتخاب و خریداری نمایید.