رفتن به محتوای اصلی

خطای ۵۰۰ وردپرس

  • سینا قربانیان
  • ۸ آبان ۱۴۰۵
  • ۴ دقیقه مطالعه
  • ۰ بازدید
تصویر شاخص راهنمای رفع خطای ۵۰۰ وردپرس
فهرست مطالب
  1. چرا خطای ۵۰۰ در وردپرس رخ می‌دهد؟
  2. چه کار کنیم؟
  3. کی بهتر است از متخصص کمک بگیرید؟
  4. سوالات متداول
  5. آیا خطای ۵۰۰ یعنی سایتم هک شده است؟
  6. debug.log را کجا پیدا کنم؟
  7. خطای ۵۰۰ فقط در پیشخوان است و سایت باز می‌شود؛ چرا؟

خطای ۵۰۰ وردپرس (Internal Server Error) یعنی سرور هنگام اجرای سایت به خطایی خورده ولی نمی‌گوید دقیقاً چه خطایی. رایج‌ترین علت‌ها خطای مهلک یک افزونه یا قالب، خراب‌شدن فایل .htaccess، کمبود حافظه PHP یا ناسازگاری نسخه PHP است. راه درست این است که اول نسخه پشتیبان بگیرید، بعد لاگ خطا را بخوانید و فقط همان عامل مقصر را غیرفعال یا اصلاح کنید.

نویسنده: تیم siloow (سیلو سولوشن) — آخرین به‌روزرسانی: آبان ۱۴۰۵

چرا خطای ۵۰۰ در وردپرس رخ می‌دهد؟

  • خطای افزونه یا قالب: معمولاً بعد از نصب یا به‌روزرسانی یک افزونه، یا ویرایش فایل functions.php.
  • فایل ‎.htaccess خراب: یک قانون اشتباه (مثلاً از افزونه کش یا امنیتی) سرور Apache یا LiteSpeed را دچار خطا می‌کند.
  • کمبود حافظه PHP: یک فرایند سنگین از سقف حافظه مجاز بیشتر مصرف می‌کند.
  • نسخه PHP نامناسب: تغییر نسخه PHP در هاست باعث می‌شود افزونه یا قالب قدیمی از کار بیفتد.
  • مشکل موقت سرور: محدودیت منابع حساب یا اختلال در سرور میزبان.

چه کار کنیم؟

  1. نسخه پشتیبان بگیرید: از پنل هاست، فایل‌ها و دیتابیس را پشتیبان‌گیری کنید تا هر تغییری قابل برگشت باشد.
  2. ایمیل مدیر را ببینید: اگر وردپرس خطای مهلک را تشخیص داده باشد، لینک «حالت بازیابی» می‌فرستد که با آن می‌توانید افزونه مقصر را غیرفعال کنید.
  3. لاگ خطا را فعال و بخوانید: در فایل wp-config.php و پیش از خط «That’s all, stop editing» این سه خط را بگذارید: define( 'WP_DEBUG', true );، define( 'WP_DEBUG_LOG', true ); و define( 'WP_DEBUG_DISPLAY', false );. خطا در فایل wp-content/debug.log ثبت می‌شود و نام افزونه یا قالب مقصر معمولاً در مسیر فایل دیده می‌شود. لاگ خطای پنل هاست (error_log) هم منبع خوبی است.
  4. افزونه مقصر را غیرفعال کنید: با FTP یا File Manager نام پوشه همان افزونه را در wp-content/plugins عوض کنید (مثلاً یک پسوند -off اضافه کنید). اگر مقصر معلوم نیست، کل پوشه plugins را موقتاً تغییر نام دهید و بعد افزونه‌ها را یکی‌یکی برگردانید.
  5. ‎.htaccess را بازسازی کنید: نام فایل را به .htaccess-old تغییر دهید؛ اگر سایت باز شد، از پیشخوان به «تنظیمات › پیوندهای یکتا» بروید و فقط «ذخیره» بزنید تا فایل سالم دوباره ساخته شود.
  6. حافظه و نسخه PHP را بررسی کنید: اگر لاگ از «memory exhausted» حرف می‌زند، سقف حافظه را بالا ببرید؛ اگر بعد از تغییر نسخه PHP مشکل شروع شده، در پنل هاست موقتاً به نسخه قبلی برگردید و افزونه ناسازگار را به‌روز کنید.
  7. بعد از رفع مشکل، WP_DEBUG را خاموش کنید و فایل debug.log را پاک کنید، چون ممکن است اطلاعات فنی سایت را برای دیگران قابل‌دسترسی کند.
مراحل امن رفع خطای ۵۰۰ وردپرس از پشتیبان‌گیری تا خواندن لاگ و بازسازی htaccess
رفع خطای ۵۰۰ بدون آزمون‌وخطای خطرناک
نشانه در لاگ یا رفتار سایتعلت محتملرفع
مسیر wp-content/plugins/… در خطاافزونهتغییر نام پوشه افزونه
مسیر wp-content/themes/…قالب یا functions.phpبرگرداندن تغییر یا فعال‌کردن قالب پیش‌فرض
Allowed memory size exhaustedکمبود حافظه PHPافزایش سقف حافظه و پیدا کردن افزونه سنگین
بدون لاگ، فقط بعد از تغییر ‎.htaccessقانون اشتباه در ‎.htaccessبازسازی از پیوندهای یکتا
شروع بعد از تغییر نسخه PHPناسازگاریبرگشت موقت نسخه و به‌روزرسانی
تشخیص و رفع علت خطای ۵۰۰ وردپرس

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

اگر به‌جای ۵۰۰، پیام «خطای مهمی رخ داده است» می‌بینید، پاسخ خطای مهم وردپرس یعنی چه را ببینید. اگر سایت کلاً بالا نمی‌آید، از چرا سایتم بالا نمیاد شروع کنید. روش رسمی فعال‌کردن لاگ در راهنمای دیباگ وردپرس آمده است.

کی بهتر است از متخصص کمک بگیرید؟

اگر دسترسی FTP یا پنل هاست ندارید، ویرایش wp-config.php برایتان آشنا نیست، یا لاگ خطا را نمی‌فهمید، بهتر است کار را به متخصص بسپارید؛ یک ویرایش اشتباه در این فایل می‌تواند سایت را کاملاً از دسترس خارج کند. همچنین اگر خطا بعد از رفع دوباره برمی‌گردد، احتمالاً مشکل عمیق‌تری مثل ناسازگاری چند افزونه یا آلودگی سایت وجود دارد.

اگر سایت شما خطای ۵۰۰ می‌دهد، فرم تماس siloow را با نشانی سایت پر کنید؛ تیم ما در اولین فرصت بررسی می‌کند و با شما تماس می‌گیرد.

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

آیا خطای ۵۰۰ یعنی سایتم هک شده است؟

معمولاً نه. بیشتر خطاهای ۵۰۰ از افزونه، قالب یا تنظیمات سرور است. ولی اگر فایل‌های ناشناس در سایت می‌بینید یا خطا بدون هیچ تغییری شروع شده، بررسی امنیتی هم لازم است.

debug.log را کجا پیدا کنم؟

وقتی WP_DEBUG_LOG روی true باشد، وردپرس خطاها را در فایل wp-content/debug.log می‌نویسد. بعد از رفع مشکل، این فایل را حذف و تنظیمات دیباگ را خاموش کنید.

خطای ۵۰۰ فقط در پیشخوان است و سایت باز می‌شود؛ چرا؟

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

مشکل

سایت وردپرسی خطای ۵۰۰ می‌دهد

علائم و نشانه‌ها

  • Internal Server Error، صفحه خطای سرور، باز نشدن پیشخوان

علت‌های احتمالی

  • خطای افزونه یا قالب، htaccess خراب، کمبود حافظه، نسخه PHP ناسازگار

راه‌حل کوتاه

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

ابزارهای موردنیاز

  • FTP یا File Manager، wp-config.php، debug.log
اشتراک‌گذاری