
در دنیای پرسرعت وب، وردپرس به عنوان محبوبترین سیستم مدیریت محتوا (CMS)، میلیونها سایت را مدیریت میکند. اما حتی با تمام مزایای آن، گاهی با خطاهایی مواجه میشویم که عملکرد سایت را مختل میکنند. یک از این خطاهای رایج، ارور Memory Limit Exceeded یا همان خطای محدودیت حافظه PHP در وردپرس است. این ارور میتواند سایت شما را از دسترس خارج کند، فرآیندهای بارگذاری را متوقف سازد و تجربه کاربری را به شدت مختل کند. اگر شما هم برای حل مشکل Memory Limit Exceeded در وردپرس دست و پنجه نرم میکنید، نگران نباشید! در این مقاله جامع، به طور کامل به بررسی علل، علائم و روشهای رفع ارور Memory Limit Exceeded وردپرس میپردازیم. ما این راهنما را طوری نوشتیم که نه تنها افزایش حافظه وردپرس را آموزش دهد، بلکه نکات سئویی برای پیشگیری از تکرار این مشکل را هم پوشش دهد. اگر به دنبال حل خطای محدودیت حافظه PHP در وردپرس هستید، تا انتهای این مطلب با ما همراه باشید.
ارور Memory Limit Exceeded چیست؟
ارور Memory Limit Exceeded معمولاً با پیامی مشابه زیر در فایل خطای PHP یا مرورگر ظاهر میشود:
Fatal error: Allowed memory size of X bytes exhausted
اگر با این پیام مواجه شدید، به این معناست که اسکریپت PHP شما بیشتر از حافظهای که مدیر سرور برای آن تعیین کرده، مصرف کرده است. مقدار پیشفرض حافظه هاست معمولاً بین 64 تا 128 مگابایت است. با این وجود، اگر سایت شما افزونههای سنگین دارد یا بازدیدکنندگان زیادی، لازم است مقدار حافظه را افزایش دهید تا با خطا رو به رو نشوید.
دلایل اصلی بروز ارور Memory Limit Exceeded در وردپرس
چند عامل مهم باعث مصرف بیش از حد حافظه PHP در وردپرس میشوند:
-
افزونههای سنگین یا ناسازگار مانند Elementor، WooCommerce یا افزونههای سئو
-
قالبهای پرجزئیات و غیر بهینه
-
ترافیک هم زمان بالا در هاست اشتراکی
-
آپلود فایلهای حجیم (تصاویر یا ویدیوهای فشرده نشده)
-
تنظیمات محدود PHP توسط شرکت هاستینگ
-
پیکربندی نادرست در سرورهای اختصاصی یا VPS
در بسیاری از هاستهای ارزان قیمت، این محدودیت به دلیل منابع سختافزاری پایین بیشتر مشاهده میشود.
علائم رایج خطای محدودیت حافظه در وردپرس
قبل از اقدام برای رفع خطای Memory Limit Exceeded وردپرس، لازم است بدانیم چه نشانههایی دارد:
-
نمایش صفحه سفید مرگ (WSOD)
-
عدم بارگذاری کامل داشبورد وردپرس
-
خطاهای Fatal Error در فایل
error_log
-
عدم توانایی در آپلود تصاویر یا فایلهای چندرسانهای
-
کاهش محسوس سرعت سایت حتی بدون ارور مستقیم
روشهای رفع ارور Memory Limit Exceeded در وردپرس
در ادامه روشهای کاربردی و تست شده برای افزایش حافظه PHP و رفع این ارور را معرفی میکنیم:
1. افزایش حافظه از طریق فایل wp-config.php
ساده ترین و سریع ترین روش برای اکثر کاربران:
-
وارد فایل منیجر هاست یا FTP شوید.
-
فایل
wp-config.php
را باز کنید. -
پیش از خط
/* That's all, stop editing! */
کد زیر را اضافه کنید:define('WP_MEMORY_LIMIT', '256M');
-
فایل را ذخیره کرده و سایت را بررسی کنید.
این مقدار را در صورت نیاز میتوانید تا 512M افزایش دهید.
2. افزایش حافظه از طریق php.ini
در صورتی که به فایل php.ini
دسترسی دارید (در هاستهای VPS یا پیشرفته):
-
فایل
php.ini
را پیدا کرده یا ایجاد کنید. -
این خط را اضافه یا ویرایش کنید:
memory_limit = 256M
-
تنظیمات را ذخیره و PHP را ریاستارت کنید.
3. تنظیم حافظه از طریق .htaccess
اگر سرور شما Apache است:
-
فایل
.htaccess
را در پوشه اصلی وردپرس باز کنید. -
این خط را به آن اضافه کنید:
php_value memory_limit 256M
توجه: هرگونه اشتباه در این فایل ممکن است باعث ارور 500 شود. قبل از تغییر، بکآپ بگیرید.
4. تنظیم از طریق پنل هاست (cPanel یا DirectAdmin)
در اکثر هاستها، تنظیم حافظه از طریق رابط گرافیکی نیز ممکن است:
-
در cPanel:
-
وارد “MultiPHP INI Editor” شوید.
-
دامنه سایت را انتخاب و مقدار
memory_limit
را تغییر دهید.
-
-
در DirectAdmin:
-
از بخش PHP Settings یا PHP Configuration اقدام کنید.
-
5. استفاده از پلاگین برای مدیریت حافظه
اگر نمیخواهید به فایلها دست بزنید، از پلاگین استفاده کنید:
-
WP Config File Editor: برای ویرایش wp-config از داشبورد
-
WP Memory Limit: تنظیم مستقیم حافظه PHP
-
Query Monitor: مانیتورینگ مصرف منابع و حافظه
پلاگینها برای رفع موقت مفید هستند؛ برای راهکار دائمی، تنظیمات فایل را انجام دهید.
6. بهینهسازی برای جلوگیری از تکرار خطا
رفع خطای Memory Limit Exceeded وردپرس تنها به افزایش حافظه محدود نمیشود. شما باید مصرف منابع را نیز کاهش دهید:
-
حذف یا غیرفعال کردن افزونههای سنگین یا غیرضروری
-
استفاده از پلاگین کش مانند WP Super Cache یا LiteSpeed Cache
-
فشردهسازی تصاویر با افزونههایی مثل Smush یا EWWW
-
ارتقاء به هاست VPS برای سایتهای پرمحتوا یا پرترافیک
7. راهکارهای پیشرفته برای توسعهدهندگان و سایتهای بزرگ
-
فعالسازی OPcache در php.ini:
opcache.enable=1
-
تنظیم memory_limit در PHP-FPM یا Nginx pool
-
استفاده از کد زیر در
functions.php
(برای تست موقت):ini_set('memory_limit', '512M');
نکات پیشگیرانه برای جلوگیری از ارور حافظه در وردپرس
برای اینکه این خطا دوباره ظاهر نشود:
-
از هاستی با حداقل 256M حافظه PHP استفاده کنید.
-
افزونههای مصرفکنندهی حافظه را شناسایی و جایگزین کنید.
-
سیستم کش سایت را فعال و تنظیم کنید.
-
نسخههای وردپرس، افزونهها و قالبها را همیشه بهروز نگه دارید.
-
از ابزارهایی مانند WP-Optimize برای بررسی وضعیت حافظه استفاده کنید.
جمعبندی: چگونه حافظه وردپرس را افزایش دهیم و سایت را نجات دهیم
خطای Memory Limit Exceeded وردپرس میتواند سایت شما را به بنبست برساند، اما خوشبختانه راهحلهای ساده و مؤثری برای آن وجود دارد. با افزایش محدودیت حافظه از طریق فایل wp-config.php، php.ini، یا .htaccess، و همچنین بهینهسازی افزونهها و ارتقاء هاست، میتوانید این خطا را برای همیشه برطرف کنید.
اگر به دنبال افزایش memory limit وردپرس، رفع خطای حافظه وردپرس و بهبود سرعت سایت هستید، این مقاله یک راهنمای کامل برای شماست. آن را بوکمارک کنید و در صورت بروز مشکل دوباره به آن مراجعه نمایید.
آیا شما هم تجربهای در برخورد با این ارور داشتهاید؟ در بخش نظرات تجربیات خود را با ما به اشتراک بگذارید!