معمولاً وقتی با ارورهای وردپرس مواجه میشویم، یک پیام توضیحی مشخص دریافت میکنیم و میدانیم چه مشکلی ایجاد شده است. اما خطای 500 وردپرس، هیچ اعتقادی به اصل شفافسازی ندارد. همه چیز عادی به نظر میرسد و یکباره پیام «500 Internal Server Error» را میبینیم. فقط میفهمیم که سرور نتوانسته درخواستها را به درستی پردازش کند و مسئولیت پیدا کردن علت اصلی آن به عهدهٔ خودمان است. در این مقاله دلایل بروز و روشهای رفع ارور 500 وردپرس را بررسی میکنیم و به این ابهام دوستنداشتنی پایان میدهیم.
خطای 500 در وردپرس مثل در قفلشدهای است که کلیدی برای باز کردنش ندارید. شما میدانید که مشکلی پیش آمده، اما هیچ یادداشتی وجود ندارد که توضیح بدهد چه اتفاقی افتاده است. البته این خطا فقط مخصوص وردپرس نیست و زمانی که سرور با مشکل مواجه شود، ممکن است در هر نوع وبسایتی با آن مواجه شویم.
هیچ پیامی در مورد اینکه مشکل از کجاست یا چگونه باید آن را رفع کرد وجود ندارد.
درست مثل اینکه ماشین را به مکانیکی ببرید و بخواهید آن را درست کنند اما نگویید چه چیزی خراب شده است. در این شرایط مکانیک باید قطعات مختلف را بررسی کند تا مشکل را پیدا کند. برای رفع ارور 500 وردپرس ، ما هم همین کار را باید بکنیم و تمام بخشها را بررسی کنیم.
گفتیم که در مواجهه با خطای 500 وردپرس، میدانید که مشکلی وجود دارد، اما پیغام خطا بهطور دقیق نمیگوید مشکل کجاست. اما طبق تجربهٔ ما و مشتریان اغلب اوقات این ارور به دلایل مشخصی بروز میکند. اصلیترین دلیل بروز ارور 500 وردپرس، خراب شدن فایل .htaccess است. گاهی اوقات، یک افزونه مشکلساز یا یک قالب ناسازگار با تنظیمات سایت، عامل بروز ارور است. در برخی موارد هم ممکن است سایت شما به محدودیت حافظه PHP برسد و همین مشکلساز شود. فایلهای اصلی آسیبدیده هم میتوانند باعث این خطا شوند و شما را ناگهانی از سایت بیرون بیندازند.
مشکل این خطا در اینجاست که معمولاً قبل از بارگذاری کامل وردپرس اتفاق میافتد. یعنی سرور اطلاعات کافی برای توضیح خطا جمعآوری نمیکند. حالا بیایید مراحل عیبیابی را با هم پیش برویم تا سایتتان دوباره بالا بیاید.
قبل از هرچیز، اجازه دهید یادآوری کنیم که همین حالا یک بکآپ کامل از سایت بگیرید و بعد دست به رفع ارور 500 وردپرس بزنید تا در صورت ایجاد مشکل، بتوانید بازیابی انجام دهید. بعد از گرفتن بکاپ، مراحل زیر را برای رفع خطای 500 دنبال کنید:
مرورگرها و افزونههای کش ممکن است به اشتباه نسخه کششده صفحه خطا را نگهدارند و باعث بروز ارور 500 وردپرس شوند. بنابراین بهتر است قبل از هر چیز، ابتدا کش مرورگر خود را پاک کنید. سپس اگر به داشبورد وردپرس دسترسی دارید، از تنظیمات افزونه کش خود، کش وردپرس را نیز خالی کنید.
فایل .htaccess برای پیکربندی تنظیمات سرور و ریدایرکتها استفاده میشود. شایعترین دلیل خطای 500 وردپرس، خراب شدن این فایل است. برای برطرف کردن مشکل با این فایل دو روش پیش رو دارید:
روش اول (سادهتر):
روش دوم (دستی):
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
اگر روشهای قبلی رفع ارور 500 وردپرس را انجام دادید و جواب نگرفتید؛ ممکن است ایراد از حافظه باشد. اگر یک اسکریپت تمام حافظه PHP را مصرف کند هم با این خطا روبهرو میشوید. برای رفع این مشکل مراحل زیر را طی کنید:
define( ‘WP_MEMORY_LIMIT’, ‘256M’ );
memory=256MB
اگر این روش مشکل را حل کرد، دلیل اصلی احتمالاً افزونه یا قالبی است که بیش از حد حافظه مصرف میکند. از هاست خود بخواهید لاگهای خطای سرور را بررسی کند.
اگر هیچکدام از راهحلهای بالا برای رفع ارور 500 وردپرس جواب نداد، به احتمال زیاد مشکل از یک افزونه است. کاری که باید بکنید این است که ابتدا تمام افزونهها را غیرفعال کنید. اگر مشکل برطرف شد، باید برگردید و یکبهیک بررسی کنید که کدام افزونه باعث خطای 500 وردپرس میشود.
اگر به پیشخوان وردپرس دسترسی دارید، مستقیم به صفحه افزونهها بروید و همه را غیرفعال کنید.اگر دسترسی ندارید، مراحل زیر را طی کنید:
با این کار، وردپرس همه افزونهها را غیرفعال میکند. سپس سایت را بررسی کنید. اگر خطا برطرف شده بود، نام پوشه را دوباره به plugins تغییر دهید و افزونهها را یکییکی فعال کرده و سایت را بررسی کنید تا افزونه مشکلساز را پیدا کنید.
اگر به ناحیه مدیریت وردپرس دسترسی دارید، به مسیر نمایش » پوستهها بروید. اگر یکی از قالبهای پیشفرض (مانند Twenty Twenty-Two) از قبل نصب شده باشد، میتوانید روی دکمه فعالسازی کلیک کنید تا آن را فعال نمایید.
فایل فشرده را در رایانه خود پیدا کرده و از حالت فشرده خارج کنید. در ویندوز با راستکلیک روی فایل و انتخاب «Extract All» این کار انجام میشود.حالا باید یک پوشه شامل فایلهای قالب وردپرس داشته باشید.
به نرمافزار FTP یا مدیریت فایل خود برگردید و این پوشه را در پوشه خالی themes آپلود کنید.
پس از آپلود، وردپرس بهطور خودکار از قالب پیشفرض استفاده خواهد کرد.
به سایت خود برگردید و چک کنید آیا خطای 500 وردپرس برطرف شده است یا نه. اگر مشکل همچنان باقی بود، میتوانید قالبهای قبلی خود را از پشتیبان مجدد آپلود کرده یا به قالب قبلی بازگردید.
اگر با غیرفعالسازی افزونهها و تغییر قالب هنوز خطای داخلی سرور (Internal Server Error) رفع نشده است، بهتر است پوشههای /wp-admin/ و /wp-includes/ را از یک نسخه جدید وردپرس دوباره بارگذاری کنید.
وارد روت اصلی سایت وردپرس شوید (همان پوشهای که wp-admin، wp-includes و wp-content در آن قرار دارد).
در ستون سمت چپ، پوشهای که از وردپرس استخراج کردهاید را باز کرده و همه فایلها و پوشههای داخل آن را انتخاب و به سرور آپلود کنید.
define( ‘WP_DEBUG’, true );
define( ‘WP_DEBUG_LOG’, true );
اگر هیچکدام از روشهای قبلی برای رفع خطای 500 وردپرس، موثر نبودند؛ باید به پشتیبان هاست تیکت بزنید و کمک بخواهید، به عنوان مثال اگر از هاست وردپرس راست چین کلود استفاده میکنید به راحتی میتوانید از طریق بخش تیکت با این مجموعه در ارتباط باشید و تمام اقداماتی که انجام دادهاید را بهصورت خلاصه شرح دهید و اگر تصویر مرتبطی دارید، ارسال کنید. اهمیت کیفیت پشتیبانی در سرویس میزبانیوب اینجا خود را نشان میدهد، چرا که از حالا به بعد تنها پشتیبانهای هاست میتوانند لاگهای سرور را بررسی کرده و علت اصلی خطا را پیدا کنند.
همانطور که متوجه شدید، برای رفع خطای 500 وردپرس، باید تمام اجزای موتور سایت را بیرون بریزیم و بررسی کنیم. بنابراین بهتر است کمی حواسمان را به نکات نگهداری از سایت جمعتر کنیم تا دوباره درگیر این دردسر نشویم. برای جلوگیری از بروز مجدد خطای ۵۰۰ در وردپرس، بهتر است همیشه از قالبها و افزونههای معتبر استفاده کنید و آنها را بهروز نگه دارید.
پیش از اعمال هر تغییر مهم، حتماً از وبسایت نسخه پشتیبان تهیه کنید. سطح دسترسی فایلها را بهدرستی تنظیم نمایید (بهطور معمول ۷۵۵ برای پوشهها و ۶۴۴ برای فایلها). افزونههای ناسازگار یا سنگین را حذف یا جایگزین کنید. فعال سازی حالت دیباگ وردپرس نیز میتواند در شناسایی سریعتر خطاها مؤثر باشد. در نهایت، انتخاب یک میزبان وب قابلاعتماد با پشتیبانی حرفهای، یکی از مهمترین اقدامات پیشگیرانه است.
سوالات متداول
ارور 500 اگر مکرر رخ بدهد یا به موقع برطرف نشود، میتواند باعث کاهش رتبه صفحات شما در نتایج گوگل شود. چون رباتهای گوگل هنگام خزش با خطا مواجه میشوند و این را نشانهای از ناپایداری سایت تلقی میکنند.
بله، کاربران هنگام بازدید از صفحهای با این خطا، یک پیام عمومی مانند “Internal Server Error” میبینند. این تجربه منفی ممکن است باعث ترک سریع سایت و کاهش اعتماد کاربران شود.
بله، هاستهای بیکیفیت با منابع محدود یا تنظیمات نادرست سرور ممکن است باعث بروز این خطا شوند. انتخاب یک هاست مطمئن با پشتیبانی قوی میتواند احتمال این خطا را بهطرز چشمگیری کاهش دهد.