اگر متوجه شدهاید که فضای هاست وردپرسی شما بهسرعت پر میشود، احتمال زیادی وجود دارد که علت اصلی آن فایل error_log باشد. این فایل میتواند در عرض چند روز به صدها مگابایت یا حتی چند گیگابایت برسد و مشکلات جدی ایجاد کند. در این مقاله، دلیل این اتفاق و راهحلهای کامل را بررسی میکنیم.
فایل error_log چیست و کجاست؟
PHP و وبسرور Apache تمام خطاها و هشدارهای اجرای کدها را در فایلهایی به نام error_log ذخیره میکنند. در هاستهای اشتراکی، این فایل معمولاً در پوشههای زیر پیدا میشود:
public_html/error_logpublic_html/wp-content/error_logpublic_html/wp-admin/error_loglogs/error_log(در ریشه هاست)
چرا فایل error_log حجیم میشود؟
دلایل اصلی بزرگ شدن این فایل عبارتند از:
- پلاگین یا قالب دارای خطا: کدهای قدیمی یا ناسازگار با نسخه فعلی PHP مرتباً خطا تولید میکنند.
- نسخه PHP ناسازگار: ارتقای PHP بدون بهروزرسانی پلاگینها میتواند صدها هشدار در ثانیه تولید کند.
- Debug mode فعال: اگر
WP_DEBUGدر wp-config.php فعال باشد، همه خطاها لاگ میشوند. - باگ در WooCommerce یا سایر افزونههای سنگین: تراکنشهای زیاد خطاهای متعددی تولید میکنند.
روشهای رفع مشکل حجیم شدن error_log
روش ۱: خاموش کردن error logging در wp-config.php
فایل wp-config.php را باز کرده و این خطوط را پیدا یا اضافه کنید:
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);
define('WP_DEBUG_DISPLAY', false);
این روش سادهترین راه برای جلوگیری از لاگ شدن خطاهاست.
روش ۲: خاموش کردن error logging از php.ini
اگر به تنظیمات PHP دسترسی دارید، مقدار log_errors را Off کنید:
log_errors = Off
یا در فایل .htaccess:
php_flag log_errors off
روش ۳: محدود کردن سایز فایل error_log
میتوانید حداکثر سایز لاگ را محدود کنید تا از رشد بیرویه جلوگیری شود:
log_errors_max_len = 1024
روش ۴: پاک کردن فایل error_log
برای پاک کردن فایل فعلی بدون حذف آن (تا لاگگیری ادامه داشته باشد):
# از طریق SSH:
> /home/username/public_html/error_log
# یا کاملاً پاک کنید:
rm /home/username/public_html/error_log
از طریق File Manager هاست هم میتوانید این فایل را پیدا و حذف کنید.
روش ۵: پیدا کردن و رفع منشأ خطا
بهترین راهحل این است که بهجای خاموش کردن لاگ، منبع خطا را پیدا کنید. برای این کار:
- چند خط ابتدایی error_log را بخوانید تا بفهمید خطا از کجاست.
- پلاگینها را یکییکی غیرفعال کنید تا خطا متوقف شود.
- قالب را به یک قالب پیشفرض وردپرس تغییر دهید.
- PHP را به نسخهای که پلاگینهایتان با آن سازگار است تنظیم کنید.
جلوگیری از حجیم شدن error_log در آینده
برای جلوگیری از تکرار این مشکل:
- پلاگینها و قالب را بهروز نگه دارید.
- قبل از ارتقای PHP، سازگاری افزونهها را بررسی کنید.
- از یک هاست وردپرس با مانیتورینگ فضا استفاده کنید تا زودتر از پر شدن فضا مطلع شوید.
- یک کرونجاب تنظیم کنید که هر هفته فایل error_log را پاک کند.
هاست وردپرس با مانیتورینگ هوشمند فضا
میهن هاستینگ هاستهای وردپرس با پشتیبانی PHP 8.4 و ابزارهای مدیریت فایل پیشرفته ارائه میدهد. مشکلات error_log و فضا را سریعتر مدیریت کنید.
