logo
جستجو کردن
جستجو کردن
Close this search box.

آموزش رفع خطای Memory Exhausted، افزایش حافظه php

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

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

خطای Memory Exhausted چیست؟

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

Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 2348617 bytes) in /home4/xxx/public_html/wp-includes/plugin.php on line xxx

راه های رفع خطای Memory Exhausted

به صورت پیش فرض، وردپرس سعی می کند محدودیت حافظه PHP را در صورتی که کمتر از 64 مگابایت باشد به صورت خودکار افزایش دهد. با این حال، 64 مگابایت اغلب به اندازه کافی زیاد نیست و نمی تواند برای شما زیاد مناسب باشد.

علاوه بر این، نسخه های قدیمی پی اچ پی معمولاً از حافظه بیشتری استفاده می کنند. آنها کندتر و در برابر حملات آسیب پذیرتر هستند. یک نسخه قدیمی PHP ممکن است باعث خطای «اندازه حافظه مجاز PHP تمام شده است» باشد. بنابراین، توصیه می کنیم از آخرین نسخه PHP پایدار برای وردپرس خود استفاده کنید. در ادامه با چگونگی رفع خطایMemory Exhausted همراه باشید.

 

آموزش نحوه رفع ارور Memory Exhausted

 

– افزایش محدودیت حافظه PHP

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

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

روش های مختلفی برای افزایش حافظه وجود دارد که یکی از آنها ویرایش فایل wp-config.php در هاست می باشد. می توانید این کار را از مدیر فایل هاست خود، از طریق یک مشتری FTP پس از ایجاد یک حساب FTP یا با استفاده از اتصال SSH انجام دهید.

برای اینجام اینکار، وارد کنترل پنل هاست خود شده و سپس به پوشه دایرکتوری هاست خود یعنی همان public_html مراجعه کنید. پس از آن؛ روی فایل wp-config.php کلیک راست کنید و سپس روی ویرایش کلیک نمائید تا وارد صفحه ویرایشگر فایل شوید.

نحوه رفع ارور Memory Exhausted

پس از آن باید درست قبل از خط “That’s all, stop editing! Happy publishing” کد زیر را اضافه کنید:

 

;define( ‘WP_MEMORY_LIMIT’, ‘512M’ )

 

چگونگی رفع خطای Memory Exhausted

همچنین اگر خط “define(‘WP_MEMORY_LIMIT’, ‘256M’) را مشاهده کردید، به سادگی مقدار را به 512M تغییر دهید. پس از ذخیره تغییرات، کش مرورگر خود را پاک کرده و وب سایت خود را به روز کنید. احتمالاً خطای Memory Exhausted برای شما رفع شده است. با ادامه آموزش برطرف کردن خطای Memory Exhausted همراه باشید.

 

– فایل php.ini خود را بررسی کنید

سرور فایل php.ini را قبل از اجرای اسکریپت های PHP بررسی می کند زیرا اطلاعاتی در مورد محدودیت منابع ارائه می دهددر واقع شما باید مطمئن شوید که مقدار حافظه پی اچ پی فایل php.ini  کمتر از مقدار حافظه تعریف شده در wp-config.php نباشد. در این صورت، وردپرس شما نمی ‌تواند از محدودیت حافظه 512 مگابایتی که قبلاً تعیین کرده‌اید استفاده کند.

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

memory_limit = 512M

سپس، تغییرات را ذخیره کنید و سایت خود را مجددا بارگذاری کنید تا متوجه شوید که آیا خطای محدودیت حافظه برای شما رفع شده یا خیر؟

– نحوه حل مشکل Memory Exhausted با غیرفعال کردن افزونه ها

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

برای غیرفعال کردن افزونه ها می توانید از دو روش استفاده کنید.

روش اول؛ استفاده از پیشخوان وردپرس می باشد. در ابتدا وارد پنل مدیریتی خود شده و سپس از بخش افزونه ها روی گزینه افزونه های نصب شده کلیک کنید. سپس تمامی افزونه های موجود را انتخاب نمائید. پس از آن از منوی کشویی بالای صفحه گزینه “غیرفعال کردن” را انتخاب کنید. با اینکار تمامی افزونه های سایت شما غیرفعال می شوند.

روش دوم؛ حال بناب به دلایل مختلفی ممکن است نتوانید به پنل مدیریتی خود دسترسی پیدا کنید، به همین دلیل برای غیرفعال کردن افزونه ها می توانید از هاست خود استفاده کنید. برای انجام اینکار؛ در ابتدا وارد کنترل پنل هاست خود شده و سپس به پوشه روت سایت خود یا همان public-html مراجعه کنید. پس از آن وارد پوشه wp-content شوید. حال در این پوشه، پوشه ای به نام plugins را مشاهده خواهید کرد که تمامی افزونه های سایت شما در آن نصب شده است. تنها کاری که باید انجام دهید این است که نام پوشه افزونه ها را به یک نام دلحواه دیگر تغییر دهید. با اینکار تمامی افزونه های سایت شما به صورت خودکار غیرفعال می شوند.

آنچه در این مطلب می خوایند

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *