چطور PHP Memory Limit را افزایش دهیم؟
یکی از تنظیمات اختصاصی مربوط به PHP که روی فضای میزبانی یا سرور وب میتوان آن را تنظیم نمود، memory_limit است که درون سند پیکربندی PHP با نام php.ini قرار گرفته. مقدار این گزینهٔ تنظیماتی را میتوان طبق نیاز تغییر داد. کاری که این گزینهٔ تنظیماتی میتواند انجام دهد، محدود کردن میزان استفادهٔ اسکریپت PHP از حافظه اصلی سیستم یا همان RAM است. در خیلی از مواقع به عنوان مدیر سایت باید جلوی استفادهٔ بیش از حد حافظه توسط اسکریپت PHP را گرفت.
معمولاً اگر میزان memory_limit کمتر از حد نیاز باشد، اسکریپت ما با مشکل مواجه میشود و خطایی را نمایش میدهد که در نهایت بازدید کننده نمیتواند به هدفش برسد. اسکریپتهای سنگین باعث استفادهٔ بیش از حد از حافظه میگردند. مثلاً ووکامرس را در نظر بگیرید. این اسکریپت که روی وردپرس نصب و اجرا میشود، به دلیل قابلیتهای بسیار زیادی که دارد، بسیار سنگین عمل میکند و اگر هاست شما از منابع کافی، از جمله RAM به اندازه برخوردار نباشد، قطعاً کاهش سرعت سایت را حس خواهید کرد!
از طرف دیگر معمولاً قالبهای حرفهای و با گزینههای تنظیماتی زیاد هم دقیقاً همین طور عمل میکنند. این قالبها معمولاً برای سایتهای پر بازدید استفاده نمیشوند، چون خیلی از منابع را صرف عملیاتی میکنند که اصلاً نیازی نیست! یعنی با نوشتن یک قالب اختصاصی برای سایت، عملکرد به مراتب بهتری را تجربه خواهیم کرد.
پس با این توضیحات حالا میرویم به سراغ طریقهٔ افزایش محدودیت PHP Memory Limit برای PHP. برای این کار اول باید ببینیم که سطح دسترسی ما در چه حدی است. اگر یک سرور مجازی یا اختصاصی داشته باشیم، دسترسی ریشه یا کل را به سرور داریم. پس هر میزان محدودیتی که در نظر داشته باشیم را میتوانیم اعمال کنیم. اما اگر سطح دسترسی ما در حد یک کاربر ساده است که یک حساب فضای میزبانی دارد، روی کنترل پنل باید به دنبال یک بخش بود که بتوان PHP را روی هاست سفارشی سازی کرد. مثلاً در سی پنل بخشی با نام Select PHP Version یا MultiPHP INI Editor باید وجود داشته باشد.
برای کسب اطلاعات بیشتر راجع به مراحل انجام این کار، توصیه میکنیم که آموزش رفع خطای PHP Memory Limit روی فضای میزبانی از مرکز آموزش وبنولوگ را مطالعه فرمایید.
2 دیدگاه
سلام من یک سرور اختصاصی دارم، اما متاسفانه نمیدونم از کجا باید php memory limit رو افزایش بدم.
میشه لطفا راهنماییم کنید.
از سمت cpanel این کار رو انجام دادم اما، در whm نمیدونم کجا باید این کار رو انجام بدم.
سلام. این بستگی به خیلی چیزها داره. اگر فقط روی سرورتون سی پنل دارید و مثلا از کلود لینوکس استفاده نمیکنید،همین که از داخل سی پنل میزان محدودیت رم رو افزایش بدید کافی است. اما در کلود لینوکس هم یک سری تنظیمات برای گزینه های PHP وجود داره که باید اونها رو هم از بخش CloudLinux Manager انجام بدید.
به طور کلی در WHM بخش Multi INI Editor مخصوص تنظیمات PHP از جمله همین php memory limit است.