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

خطای ۵۰۰ چیست؟

خطاهای وب‌سرور به وسیله کدهای وضعیتی HTTP (HTTP Status Codes) تعریف می‌شوند. این کدها معمولاً در پیام‌های سرور به مرورگر ارسال می‌شوند و وضعیت مشخصی از ارتباط بین مرورگر و سرور را نمایش می‌دهند. این کدها از سه رقم تشکیل شده‌اند و هر کد سه رقمی به معنای خاصی است. کدهای وضعیتی رایج عبارتند از:

  1. کدهای وضعیتی در محدوده ۱۰۰-۱۹۹: این کدها به عنوان کدهای پیام وضعیت اطلاعاتی (Informational) شناخته می‌شوند و معمولاً به منظور اطلاع‌رسانی در مورد وضعیت درخواست به کار می‌روند.
  2. کدهای وضعیتی در محدوده ۲۰۰-۲۹۹: این کدها به عنوان کدهای وضعیت موفقیت‌آمیز (Successful) شناخته می‌شوند و نشان‌دهنده این هستند که درخواست با موفقیت اجرا شده و نتیجه به درستی به مرورگر ارسال شده است.
  3. کدهای وضعیتی در محدوده ۳۰۰-۳۹۹: این کدها به عنوان کدهای وضعیت تغییر مسیر (Redirection) تعریف می‌شوند و به مرورگر نشان می‌دهند که نیاز به انتقال به مکان دیگری دارد.
  4. کدهای وضعیتی در محدوده ۴۰۰-۴۹۹: این کدها به عنوان کدهای وضعیت خطاهای کلاینت (Client Errors) شناخته می‌شوند و نشان‌دهنده خطاهای مربوط به درخواست مرورگر هستند، مانند خواستن یک صفحه غیرموجود.
  5. کدهای وضعیتی در محدوده ۵۰۰-۵۹۹: این کدها به عنوان کدهای وضعیت خطاهای سرور (Server Errors) شناخته می‌شوند و معمولاً به مشکلات در سمت سرور اشاره دارند.

آموزش رفع خطای ۵۰۰ در وردپرس

یکی از خطاهای معروف در محدوده ۵۰۰-۵۹۹، خطای ۵۰۰ است که به عنوان “خطای داخلی سرور” یا (Internal Server Error) شناخته می‌شود. این خطا نشان‌دهنده اشکالات داخلی در سرور است که می‌تواند به مشکلات مختلفی مثل خطاهای درونی پایگاه داده، مشکلات کدنویسی، یا محدودیت‌های منابع سرور مرتبط باشد. وقتی این خطا ظاهر می‌شود، مرورگر معمولاً پیغام خطای عمومی نشان می‌دهد و نه توضیح دقیقی از مشکل.

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

بررسی فایل error_log

برای رفع خطای ۵۰۰ در وردپرس، نخستین مرحله بررسی فایل error_log سرور است. فایل error_log یک فایل سیستمی است که به شما اطلاعات کاملی از خطاها و اشکالات سرور فراهم می‌کند. می‌توانید از این اطلاعات برای تشخیص و رفع خطای ۵۰۰ در وردپرس استفاده کنید.

توجه داشته باشید برای بررسی error_log نیاز به دسترسی به سرور دارید و اگر هاست اشتراکی دارید از راهکارهای بعدی استفاده کنید.

برای دسترسی به فایل error_log، به سرور خود وارد شوید. این عملیات بستگی به نوع سرور شما دارد. پس از ورود به سرور، باید فایل error_log را پیدا کنید. این فایل ممکن است در مسیرهای مختلفی قرار داشته باشد. معمولاً در دایرکتوری‌های مانند /var/log/ یا /logs/ یا در دایرکتوری اصلی وب‌سایت قرار دارد. با استفاده از یک ویرایشگر متنی مانند nano یا vim (برای سرورهای لینوکس) یا Notepad (برای ویندوز)، فایل error_log را باز کنید و محتوای آن را مشاهده کنید. اینجا ممکن است شما پیغام‌های خطا و اطلاعات مربوط به مشکلات سرور و وردپرس را ببینید.

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

اگر از هاست اشتراکی استفاده می‌کنید و دسترسی SSH به سرور ممکن نیست، می‌توانید از ابزارهای مدیریتی وردپرس مانند افزونه “Health Check & Troubleshooting” یا “WP Debug” برای تشخیص و رفع مشکلات استفاده کنید. همچنین از پشتیبانی هاست خود نیز می‌توانید کمک بگیرید.

پاکسازی کش (Clear Cache)

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

بررسی پوسته و افزونه‌ها

خطاهای ۵۰۰، معمولاً به عنوان “خطای داخلی سرور” شناخته می‌شوند و اغلب به دلایل مختلفی از جمله مشکلات در قالب، افزونه‌ها، یا تنظیمات سرور بروز می‌کنند. راهکارهای اصلی برای رفع این خطا به صورت زیر هستند:

اگر به پنل مدیریت دسترسی دارید:

تغییر قالب (پوسته): اگر اخیراً قالب جدیدی نصب کرده‌اید یا تغییرات زیادی در قالب فعلی اعمال کرده‌اید و خطای ۵۰۰ به وجود آمده است، اولین قدم انتخاب یک قالب پیش‌فرض وردپرس می‌باشد. قالب پیش فرض وردپرس را فعال کنید و آزمایش کنید. اگر مشکل رفع نشد قالب اصلی خود را مجددا فعال کنید و مرحله بعدی را انجام دهید.

غیرفعال کردن افزونه‌ها: افزونه‌ها نیز ممکن است مشکل‌زا باشند. شما می‌توانید تمام افزونه‌ها را به صورت یکجا غیرفعال کنید و سپس به ترتیب هر یک را فعال کرده و سایت را بررسی کنید. این کار به شناسایی افزونه‌ای که مشکل ایجاد می‌کند کمک می‌کند.

اگر به پنل مدیریت دسترسی ندارید:

برای بررسی مشکل تداخل با افزونه‌‌ها، می‌توانید از راهکارهای سریع زیر استفاده کنید:

  1. غیرفعال کردن تمام افزونه‌ها: برای غیرفعال کردن همه افزونه‌ها به طور همزمان، می‌توانید نام پوشه plugins را تغییر دهید. برای این کار، به فایل‌مدیریت FTP یا پنل مدیریت فایل‌ها مراجعه کنید و پوشه wp-content/plugins را به مثال wp-content/plugins-disabled تغییر نام دهید. با انجام این کار، تمام افزونه‌های وردپرس غیرفعال خواهند شد.
  2. تست و فعال‌سازی افزونه‌ها به صورت تکی: پس از تغییر نام پوشه plugins و غیرفعال شدن همه افزونه‌ها، می‌توانید آنها را به صورت تکی تست کنید. به طور مثال، پوشه plugins-disabled را به plugins تغییر نام دهید و وارد پوشه plugins شوید سپس یکی یکی نام پوشه ها را تغییر دهید و امتحان کنید.

با استفاده از این راهکارها، می‌توانید تداخل با افزونه‌ها را بررسی کرده و در نهایت خطای ۵۰۰ را برطرف کنید.

همچنین برای غیر فعال کردن قالب به پوشه wp-content/themes بروید و نام پوشه قالب خود را تغییر دهید. سپس سایت را آزمایش کنید اگر صفحه سفید دیدید یا سایت را نامرتب دیدید مشکل از قالب شماست.

به‌روزرسانی وردپرس و افزونه‌ها

به‌روزرسانی هسته وردپرس، افزونه‌ها، و قالب‌ها از اهمیت بسیار زیادی برخوردار است. این اقدامات برای حفظ امنیت، بهینه‌سازی عملکرد، و رفع اشکالات ممکن استخراجی از معماری و تعاملات مختلف در سیستم وردپرس لازم است. به روزرسانی‌ها نه تنها از نظر امنیتی مهم هستند بلکه می‌توانند باعث رفع مشکلات و خطاهای متداولی مانند خطای ۵۰۰ نیز شوند. این اقدامات توسط تیم وردپرس و توسعه‌دهندگان افزونه‌ها و قالب‌ها برای بهبود کد و برطرف کردن مسائل ناسازگاری و مشکلات عملکردی انجام می‌شوند.

وقتی با مواجهه با خطای ۵۰۰ یا مشکلات دیگر در وب‌سایت خود روبرو می‌شوید، یکی از راهکارها تغییر و به‌روز کردن هسته وردپرس، افزونه‌ها و قالب‌ها به آخرین نسخه‌ها می‌باشد. این اقدام می‌تواند مشکلات امنیتی را برطرف کند و از ناسازگاری‌ها در نسخه‌ها و افزونه‌های قدیمی پیشگیری کند. اما باید به خاطر داشته باشید که قبل از هر به‌روزرسانی، تهیه یک نسخه پشتیبان از وب‌سایت شما بسیار حیاتی است. به‌روزرسانی‌ها ممکن است به تنظیمات و اطلاعات شما تأثیر بگذارند، بنابراین داشتن یک نسخه پشتیبان به بازگردانی وب‌سایت در صورت بروز مشکل کمک می‌کند.

بررسی فایل .htaccess

خطای ۵۰۰ در وردپرس ممکن است به عوامل مختلفی برگردد، اما یکی از این عوامل ممکن است مربوط به فایل .htaccess باشد. این فایل معمولاً در دایرکتوری اصلی وب‌سایت و یا دایرکتوری فرعی وردپرس (WordPress) قرار دارد و تنظیمات مربوط به سرویس‌دهی وب‌سرور را تعیین می‌کند. تغییرات ناخواسته یا اشتباهی در این فایل ممکن است باعث خطای ۵۰۰ شود.

برای رفع خطای ۵۰۰ که احتمالاً به .htaccess مربوط است، می‌توانید مراحل زیر را انجام دهید:

در سی پنل به قسمت File Manager مراجعه کنید(پنل های هاستینگ دیگر هم قسمتی به نام File Manager دارند):

سپس به پوشه اصلی سایت یعنی public_html وارد شوید و مطابقه تصویر فایل‌های مخفی را نمایان کنید:

سپس در تنظیمات مربوط گزینه نمایش فایل‌های مخفی را فعال کنید:

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

# 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

سپس فایل زا ذخیره کنید و سایت را آزمایش کنید. اگر مشکل رفع شد فراموش نکنید که یکبار به پنل مدیریت وردپرس بروید و از قسمت تنظیمات > پیوندهای یکتا یک بار ذخیره کنید تا پیوندهای یکتای شما مجدد تنظیم شوند.

افزایش میزان حافظه PHP

برای رفع خطای ۵۰۰ در وردپرس که به نقص در حافظه PHP مرتبط باشد، شما می‌توانید میزان حافظه مخصوص PHP را افزایش دهید. این تغییرات ممکن است برای پیشرفته‌ترین کاربران وب وردپرس مناسب باشد. توجه داشته باشید که برخی از هاست‌ها ممکن است این تغییرات را محدود کنند. در اینجا راهکار افزایش حافظه PHP را برای رفع خطای ۵۰۰ توضیح می‌دهم:

  1. یافتن فایل wp-config.php: این فایل در دایرکتوری اصلی وب‌سایت وردپرس (به عنوان مثال، /public_html/ یا /htdocs/) قرار دارد.
  2. ویرایش فایل wp-config.php: با استفاده از یک ویرایشگر متن، فایل wp-config.php را باز کنید.
  3. افزایش میزان حافظه PHP: اکنون می‌توانید میزان حافظه مخصوص PHP را تنظیم کنید. می‌توانید از مقادیر زیر استفاده کنید:
define('WP_MEMORY_LIMIT', '256M');

توجه داشته باشید که به صورت مفصل می‌توانید آموزش افزایش حافظه php در وردپرس را بخوانید.

سخن پایانی