چگونه خطای داخلی سرور را در وردپرس حل کنیم؟
حتما تا به حال در حال مرور وب با اخطار HTTP 500 یعنی خطای داخلی سرور مواجه شدید، ولی وقتی این اتفاق برای سایت وردپرسیتان بیافتد چگونه باید مشکل را برطرف کرد؟ با ما باشید تا در اینجا با علت های وقوع این خطا و شیوههای رفع آن آشنا شویم.
چرا خطای داخلی سرور در وردپرس اتفاق میافتد؟
اخطار داخلی سرور مختص وردپرس نیست و با هرچیزی که بر روی سرور اجرا میشود، ممکن است رخ دهد. اما در وردپرس معمولا به خاطر افزونهها و توابع پوسته رخ میدهد یا با فایل خراب htaccess و محدودیت حافظه php. بعضی موارد با این خطا فقط موقع دسترسی به پنل مدیریتی مواجه میشوید در حالی که بقیه سایت به خوبی در حال کار کردن است. در ادامه راه حلها را با هم مرور میکنیم.
جستجو برای فایل .htaccess خراب
اولین مشکلی که برای برطرف کردن خطای داخلی سرور باید بررسی کنید یک فایل htaccess خراب است. که اینکار را میتوانید با تغییر نام این فایل انجام دهید برای این کار با یک نرم افزار مدیریت FTP مثل filezilla وارد سایت شوید ودر پوشهای که فایل های wp-content و wp-admin و wp-includes قرار دارد فایل htaccess را به نامی دیگر مثل .htacces_old تغییر دهید با این تغییر نام سرور دیگر به این فایل خراب، دسترسی ندارد چرا که از روی نام آنرا مییابد و در صورتی که سایت شما بعد از تغییر نام درست کار کرد مشکل از این فایل بوده و فقط برای ساخت دوباره این فایل به تنظیمات -> پیوندهای یکتا رفته و دکمه ذخیره را بزنید با این کار فایل .htaccess دوباره تولید میشود.
اگر این راه حل مشکل شما را حل نکرد ادامه این مقاله را بخوانید
عبور از محدودیت حافظه PHP
خطای داحلی سرور ممکن است به خاطر عبور از محدودیتی که برای حافظه در php در نظر گرفته شده است رخ دهد که برای رفع این مشکل فایل wp-config.php در شاخه اصلی وردپرس را ویراش کنید و خط پایین را تگ php اصلی اضافه کنید:
define(‘WP_MEMORY_LIMIT’, ’64M’);
اگر که فقط هنگام دسترسی به پنل مدیریتی با این پیام مواجه میشوید راه دیگری وجود دارد که یک فایل متنی با نام php.ini تولید کنید و در آن بنویسید : memory=64MB و فایل را ذخیره و در پوشه wp-admin با استفاده از FTP ذخیره کنید.
خوب ممکن است که با این کار خطا دیگر نمایش داده نشود اما مشکل هنوز برطرف نشده است، مشکل از یک افزونه یا تابع پوسته که ضعیف کدنویسی شده است ممکن است رخ دهد که باید این پلاگین را پیدا و مشکل را برطرف کنید که این کار با دیدن log های هاست صورت میگیرد که برای دسترسی به این گزارش ها با ارائه دهنده هاست تماس بگیرید و مشکل را مطرح سازید.
مشکل با افزایش حافظه اگر برطرف نشد دو راه دیگر باقی میماند که در ادامه بیان میشود.
غیرفعال سازی همه افزونهها
اگر که هیچ یک از راهکارهای قبلی مشکل را برطرف نکرد این مشکل ممکن است به خاطر افزونه خاصی رخ داده باشد یا چند افزونه که در کنار هم ایجاد مشکل کردهاند خوب اول تمام پلاگین ها را باید غیر فعال کنید اما این کار باید بدون ورود به پنل مدیریتی صورت گیرد برای این کار دو راه داریم یکی اینکه از طریق FTP پوشه plugins را در پوشه wp-content تغییر نام دهید که افزونه ها از دسترس وردپرس خارج شود این کار را که بکنید تمام افزونهها غیر فعال خواهد شد. خوب دیگر نمیتوانید وارد پنل مدیریتی شوید با تغییر نام دوباره از نام جدید به plugins افزونه ها را برای وردپرس قابل دسترس کنید اما این بار افزونه ها همه غیر فعال اند خوب حالا یکی یکی افزونه ها را فعال کنید تا بفهمید که مشکل از کدام افزونه است. راه دیگر غیر فعال سازی همه افزونه ها استفاده از phpMyAdmin است اگر نمیدانید که چگونه به phpMyAdmin دسترسی داشته باشید از شیوه FTP استفاده کنید. خوب در پایگاه داده وردپرس به جدول wp_options رفته و نام تنظیمات active_plugins را بیابید و مقدارش را به
a:0:{}
تغییر دهید. خوب اگر که مشکل حل شد متوجه خواهید شد که یکی از افزونه ها باعث وقوع خطا شده است اما اگر هنوز هم مشکل دارید فایل های اصلی وردپرس را از یه فایل تازه نصب دوباره بر روی هاست آپلود کنید این کار هیچ کدام از اطلاعات شما را حذف نخواهد کرد ولی اگر یکی از فایل ها خراب شده باشد مشکل را برطرف خواهد کرد.
خوب امیدوارم تا اینجا مشکل حل شده باشد اگر که هنوز خطا پابرجاست با پشتیبانی هاستتان تماس بگیرید تا با بررسی logهای سرور علت مشکل را پیدا و برای برطرف کردن آن کمک کنند.
با تشکر – وردپرس یار