رفع خطای Allowed Memory Size Exhausted در وردپرس

یکی از مشکلات رایج کاربران مخصوصا در استفاده از قالب های حرفه ای وردپرس و یا استفاده از پلاگین ها، برخورد با خطای Allowed Memory Size Exhausted میباشد که این خطا به دلیل کمبود حافظه ی رم تخصیص داده شده در هاست های اشتراکی میباشد. قالب های وردپرس جدید دارای امکانات گسترده ای میباشند که برای اجرای فایل های حاوی کد مربوط به این امکانات، کاملا بدیهی هست که به مقداری RAM نیاز دارند. همچنین برای اجرای پلاگین های نصب شده و خود وردپرس نیز نیاز به استفاده از ram میباشد. حالا مشکل اینجاست که در برخی از هاست های اشتراکی، به دلیل اینکه شرکت هاستینگ، حافظه ی رم کمی در اختیار کاربر قرار میدهد، عملا سایت شما ممکن است تا در زمان اجرای کدها و دستورات با کمبود رم مواجه شود. معمولا شما با نمونه خطاهای زیر مواجه خواهید شد:

PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 6233929 bytes) in /public_html/…/wp-includes/cache.php on line 330

Fatal error: Allowed memory size of 43654821 bytes exhausted (tried to allocate 3248727 bytes) in /home/…/public_html/wp-includes/plugin.php on line xx

 

برای رفع خطای Allowed Memory Size Exhausted در وردپرس چند راهکار وجود دارد که در این مطلب با بهترین و تاثیر گذار ترین روشهای رفع خطای Allowed Memory Size Exhausted در وردپرس آشنا خواهید شد.

 Allowed Memory Size Exhausted

تماس با پشتیبانی هاست

معمولا از این روش به عنوان آخرین گزینه استفاده میشود ولی به نظر من بهتره اول اطمینان حاصل کنیم که مشکل اصلی از جانب ما میباشد تا بتوانیم آنرا رفع کنیم و وقت خودمان را بیهوده هدر ندهیم ، پس ابتدا با پشتیبانی هاست خود تماس بگیرید و مطمئن شوید که میزان مجاز مصرف رم برای شما چقدر است .

احتمالا اگر میزان مجاز شما بیشتر از ۶۴M باشود مشکل از هاست شما نیست و میتوانید به سراغ راه های دیگر بروید. چون سیستم مدیریت محتوای وردپرس معمولا به ۴۰M رم برای اجرای صحیح نیاز دارد و اگر منابع هاست شما به کمتر از این میزان محدود شده باشد شما با مشکل مواجه خواهید شد.

پیشنهاد میکنیم از شرکت های معتبر هاست خریداری کنید!

تغییرات در wp-config.php

بعد از آنکه از طرف میزبان هاست مطمئن شدید به سراغ راه بعدی میرویم ، این روش معمول ترین روش برای رفع این مشکل میباشد ، ابتدا به هاست خود مراجه کنید و فایل wp-config.php را از محل نصب وردپرس خود دانلود کنید ( توجه داشته باشید که پیش از انجام هر کاری حتما از فایل wp-config.php نسخه پشتیبان تهیه کنید) و سپس آنرا بایک ادیتور متنی مانند Notepad باز کنید .

در ادامه شما بایدتکه کد زیر را در بین تگ های php موجود در فایل wp-config.php (تا قبل از wp-settings.php) قرار دهید و بعد تغییرات را ذخیره کنید .


define('WP_MEMORY_LIMIT', '64M');

حال فایل  wp-config.php  را بعد از ذخیره تغییرات مجددا به هاست خود منتقل کنید . این تکه کد میزان  ۶۴M از مموری را برای اجرای وردپرس دخیره میکند ، همچنین شما بسته به نیاز خود میتوانید میزان آنرا به ۹۶ و یا ۱۲۸ تغییر دهید ، اما این کار به هیچ عنوان پیشنهاد نمیشود زیرا در بیشتر موارد بجز موارد خاص موجب کندی سایت خواهد شد.

ویرایش فایل php.ini و .htaccess

اگر بعد از اطمینان از میزان مجاز مصرف منابع از طرف سرویس دهنده هاست و ویرایش  wp-config.php مشکل کماکان پابرجا بود ، به سراغ فایل php.ini در هاست برود و میزان memory limit را از ۳۲M به ۶۴M تغییر دهید


memory_limit = 64M ; Maximum amount of memory a script may consume (64MB)

گر به فایل php.ini دسترسی ندارید میتوانید فایل .htaccess  را بازکنید و کد زیر را به آن اضافه کنید (اگر فایل .htaccess در هاست شما موجود نبود میتوانید آنرا بسازید)


php_value memory_limit 64M

امیدواریم مشکل کمبود رم شما حل شده باشه.

همچنین پیشنهاد میکنیم تا حد امکان کمتر پلاگین نصب کنید و پلاگین هایی رو هم که استفاده نمی کنید کاملا از وردپرس خود پاک کنید. چون حتی در حالت غیرفعال هم مقداری از منابع رو مصرف میکنند!

آموزش بهینه سازی وردپرس آموزش وردپرس

درباره مدیریت -مصطفی دهقان

آرزوی قلبی من خدمت برای تمام دوستداران وردپرس در ایران نشر محصولاتی با حداکثر کیفیت و بهترین پشتیبانی می باشد ، به امید روزی که وردپرس یار خدمتگذارترین وردپرسی ایران شود ..!

2 نظر

  1. مجید کبیری

    سلام
    من کارهای بالا را انجام دادم ولی زبیخ عرب شد
    وقتی در فایل .htaccess تغییرات را انجام دادم سایت پیغام خطا داد و دیگه باز نشد و وقتی که تنظیمات را در این فایل به حالت قبل آوردم در قسمت پریمیوم سئو و در قسمت وضعیت سرور و زیرشاخه ماژول فیسبوک با خطای زیر مواجحه شدم
    Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 36955364 bytes) in /home/esetport/public_html/wp-includes/functions.php on line 291
    نکته :
    قبل از انجام تغییرات بالا در قسمت وضعیت سیستم فقط بهم پیغام میداد که حافظه رم کم است

دیدگاه خود را بیان کنید

نوزده − 3 =

از ما حمایت کنید