معمولا خطاهایی که با هر نوع سیستم مدیریت محتوا با اون مواجه میشید مختلف هستند و به هر دلیلی ممکنه تا برای سایت شما پیش بیان که به دلایل مختلفی با چنین خطاهایی مواجه شوید. یکی از خطاهای رایج خطای داخلی سرور در وردپرس یا همون خطای ۵۰۰ در وردپرس هستش که اونو با خطای HTTP 500 Internal Server Error هم میشناسیم و حتما چه در سایت خودتون و یا چه سایت دیگران با این خطا تا به حال مواجه شدید. برای رفع خطاهای این چنین در وردپرس راههای گوناگونی وجود داره که میبایست همه این راهها را طی کنید تا در نهایت ببینید که دلیل بروز این خطا چی بوده تا مشکل را برطرف کنید.
در این مقاله از پایگاه دانش قصد دارم به نحوه برطرف کردن خطای ۵۰۰ در وردپرس و حل مشکل HTTP 500 Internal Server در وردپرس بپردازم، پس تا انتها همراه ما باشید.
آموزش رفع خطای ۵۰۰ در وردپرس
خطای internal server error 500 صرفا مختص وردپرس نبوده و همونطور که از نام اون مشخصه به دلیل عدم ناسازگاری در کدهای و دلایل دیگه در سایت رخ میده. بنابراین قبل از هر کاری ابتدا باید بررسی کرده و ببینید دلیل بروز خطا به چه دلیلی میتونه باشه و در نگاه اول اگر به یک متخصص بگید که با چنین خطایی مواجه شدید نمیشه به طور قطع گفت که دلیل بروز خطا از چی بوده، بنابراین اگر هنگام تغییر در فایلهای وردپرس و ویرایش قالب یا افزونه چنین خطایی را مشاهده کردید یا به هر دلیل دیگه با تغییرات به وجود اومده باید دقیقا به شرح اون بپردازید.
اما اگر بعد از چند روز به سایت مراجعه کردید و چنین خطایی را دیدین که دلیلش هم مشخص نیست باید تمامی راههایی که در این مقاله ذکر میشه را برای رفع مشکل خطای داخلی سرور در وردپرس(خطای ۵۰۰) طی کنید. البته در برخی موارد این خطا صرفا در صفحه ورود به پیشخوان وردپرس ظاهر میشه و عملا شما با خطایداخلی سرور در صفحه اصلی سایت مواجه نخواهید شد.
۱- بررسی فایل htaccess.
رایجترین دلیل بروز خطای ۵۰۰ در وردپرس و ارور HTTP 500 Internal Server به دلیل مشکل در فایل htaccess. رخ میده، بنابراین وارد هاست خودتون بشید و سپس به File Manager هاست مراجعه کنید، بعد از این مرحله به مسیر public_html مراجعه کنید، در اینجا فایلی با نام htaccess. قرار داره که در کنار پوشههای wp-content، wp-admin و wp-includes قرار داره.
هاست سیپنل
اگر از هاست سیپنل استفاده میکنید، روی دکمه Settings کلیک کنید و سپس گزینه Hidden را انتخاب کنید تا فایلهای مخفی به شما نمایش داده شوند.
حالا بعد از اینکه فایل به شما نمایش داده شد روی اون راست کلیک کرده و نام فایل را به چیزی مثل htaccess_old. تغییر نام بدین و آدرس سایت خودتون را وارد کنید و صفحه را رفرش کنید تا ببینید مشکل برطرف شده یا نه، اگر که برطرف شده بود حالا به پیشخوان وردپرس وارد شده و به مسیر تنظیمات> پیوندهای یکتا مراجعه کرده و یکبار روی دکمه ذخیره تغییرات کلیک کنید تا فایل htaccess. جدید مجددا ساخته شود.
هاست دایرکت ادمین
در هاست دایرکت ادمین هم بعد از اینکه وارد File Manager شدید و به مسیر public_html مراجعه کردید روی دکمه Rename که در مقابل فایل htaccess. قرار داره کلیک کرده و نام فایل را به چیزی مثل htaccess_old. تغییر نام بدین و آدرس سایت خودتون را وارد کنید و صفحه را رفرش کنید تا ببینید مشکل برطرف شده یا نه، اگر که برطرف شده بود حالا به پیشخوان وردپرس وارد شده و به مسیر تنظیمات> پیوندهای یکتا مراجعه کرده و یکبار روی دکمه ذخیره تغییرات کلیک کنید تا فایل htaccess. جدید مجددا ساخته شود.
۲- افزایش میزان حافظه PHP
اگر خطای HTTP 500 Internal Server را فقط در صفحه ورود به پیشخوان وردپرس مشاهده کردید باید میزان حافظه PHP هاست را افزایش دهید. برای این منظور وارد File Manager هاست شده و سپس به مسیر public_html/wp-admin مراجعه کنید. حالا یکی فایل جدید با نام PHP.ini در این پوشه بسازید و کد زیر را داخل فایل قرار دهید.
memory=64MB
حالا فایل رو ذخیره کرده و مجددا به صفحه ورود به پیشخوان وردپرس مراجعه کنید تا ببینید مشکل شما برطرف شده است یا خیر، معمولا اگر دلیل خطا به خاطر میزان حافظه رخ داده باشه با این روش حل خواهد شد، در صورتی که مشکل برطرف نشد میتونید کد زیر را در فایل wp-config.php قرار بدین که در مسیر public_html قرار داره، چرا که ممکنه تا با کد قبلی حجم حافظه براتون افزایش پیدا نکنه.
define('WP_MEMORY_LIMIT', '64M');
اما اگر با استفاده از روشهای بالا موفق به اضافه کردن این حجم نشدید اصلا نگران نباشید. کافیه با استفاده از مقاله جامع آموزش افزایش محدودیت حافظه php در وردپرس اقدام به اضافه کردن حجم حافظه PHP در وردپرس بکنید و در نهایت بررسی کرده و ببینید که آیا با این روش موفق به رفع مشکل ۵۰۰ در وردپرس شدید یا نه!
۳- غیرفعال کردن افزونههای وردپرس
اگر با روشهای قبلی موفق به رفع خطا نشدید، احتمال دیگری که میتواند باعث این مشکل شود، ناسازگاری افزونهها با مشخصات سرور هاست شماست. به همین دلیل، یکی از رایجترین خطاها در وردپرس هنگام نصب و فعال کردن افزونهها رخ میدهد که ناشی از عدم استفاده از هاست مناسب وردپرس است.
برای رفع خطای داخلی سرور که به دلیل افزونهها باشد، ابتدا وارد پیشخوان وردپرس شده و تمامی افزونهها را به صورت یکجا غیرفعال کنید. سپس افزونهها را به ترتیب یکی یکی فعال کرده و هر بار سایت را رفرش کنید تا افزونه مشکلساز را شناسایی کنید. در این حالت، میتوانید با بررسی کدهای افزونه یا انتخاب یک افزونه جایگزین، خطای ۵۰۰ در وردپرس را برطرف کنید. همچنین، حتماً این مشکل را به نویسنده افزونه گزارش دهید تا در آپدیتهای بعدی مورد بررسی قرار گیرد
عدم دسترسی به پیشخوان وردپرس
خُب، همونطور که در بالا اشاره شد ممکنه تا این خطا در صفحه ورود وردپرس پیش اومده باشه و قادر نباشید به پیشخوان وردپرس دسترسی داشته باشید، بنابراین در این حالت قادر نیستید تا افزونهها را غیرفعال کنید. برای این کار ابتدا وارد هاست خود شده و به مسیر phpmyadmin مراجعه کنید. سپس در پایگاه داده وردپرس به جدول wp_options مراجعه کرده و سپس به دنبال فیلد active_plugins بگردید و بعد از یافتن روی دکمه Edit کلیک کنید.
حالا در صفحه باز شده مشابه تصویر زیر مقدار option_value را به a:0:{} تغییر داده و روی دکمه Go که در انتهای صفحه قرار داره کلیک کنید تا کلیه افزونههای شما غیرفعال شوند.
سخن پایانی
در نهایت، اگر با این روشها نیز مشکل شما حل نشد، آخرین راهکار عملی این است که جدیدترین نسخه وردپرس را دانلود کرده و جایگزین نسخه فعلی کنید. برای این کار، پس از دانلود فایل ZIP وردپرس، پوشه wp-content و فایل wp-config.php را از فایل زیپ حذف کنید. سپس پوشهها و فایلهای باقیمانده را از پوشه wordpress به مسیر اصلی سایت منتقل کنید.
حالا یک بار دیگر یک فایل فشرده zip از این فایلها تهیه کرده و با آپلود آن، فایلها و پوشههای دیگر در هاست خود را جایگزین کنید تا اگر مشکل ارور ۵۰۰ در وردپرس از هسته وردپرس باشد، برطرف شود. البته احتمال بروز این مشکل با این روش بسیار کم است. برای اطلاعات بیشتر میتوانید از راهنمای بروزرسانی دستی وردپرس استفاده کنید.