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

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


بارگذاری…

وردپرس بدون شک یکی از بهترین سیستم های مدیریت محتوای سایت ساز جهان است که برای تمامی کاربران، به خصوص برای افرادی که هیچ مهارتی ندارند یک محیط ساده را ارائه می دهد تا هر کسی بتواند برای خود یک وب سایت طراحی کند. علی رقم مزیت هایی که دارد؛ معایب مختلفی نیز به مرور زمان در آن دیده می شود. یکی از خطاهای رایجی که در این مطلب قصد داریم به آن بپردازیم، خطا 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

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

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

بیشتر بخوانید: برطرف کردن خطای Maintenance Mode وردپرس 

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

با طریقه رفع خطا Memory Exhausted همراه نوین وردپرس باشید.

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

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

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

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

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

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

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

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

بیشتر بخوانید: کنیبالیزیشن Cannibalization چیست؟ راه های تشخیص و رفع آن 

– فایل 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 را مشاهده خواهید کرد که تمامی افزونه های سایت شما در آن نصب شده است. تنها کاری که باید انجام دهید این است که نام پوشه افزونه ها را به یک نام دلحواه دیگر تغییر دهید. با اینکار تمامی افزونه های سایت شما به صورت خودکار غیرفعال می شوند.

بیشتر بخوانید: کد کنیون (Codecanyon) چیست؟ 

سوالات متداول

علت بروز خطای Memory Exhausted در وردپرس چیست؟

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

ساده ترین روش رفع ارور Memory Exhaustedچیست؟

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

جمع بندی آموزش رفع ارور Memory Exhausted

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

منبع: hostadvice