خطای سرور ۵۰۰ چیه و چطور رفعش کنم؟

خطای سرور ۵۰۰ چیست و چه معنایی دارد؟

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

خطای سرور 500 - کد وضعیت http
اگر کد وضعیت ۲۰۰ باشد شما با آدرسی که وارد کرده بودید مواجه خواهید شد که به صورت کامل بارگذاری شده است اما اگر یکی از کد های وضعیت ۵۰۰ باشد شما با یکی از خطاهای خانواده ۵۰۰ مواجه می شوید

کد وضعیت HTTP به شما کمک می کند تا وضعیت درخواست خود را شناسایی کنید. عمدتاً ۲ نوع کد وضعیت وجود دارد:

در وضعیت اول اگر همه چیز بی مشکل باشد شما باکد وضعیت ۲۰۰ رو به رو خواهید شد. که البته شامل صفحه خطا نیست و صرفا بارگزار بی مشکل آدرس است. یعنی “همه چیز درست است”.

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

انواع مختلف خطای سرور ۵۰۰ داخلی عبارتند از:

  • ۵۰۰ Internal Server Error
  • HTTP 500 – Internal Server Error
  • Temporary Error (500)
  • Internal Server Error
  • HTTP 500 Internal Error
  • ۵۰۰ Error
  • HTTP Error 500
  • ۵۰۰. That’s an error

اگر سرور ویندوز با استفاده از Microsoft IIS 7.0 یا بالاتر باشد کد مانند موارد زیر خواهد بود:

  1. ۵۰۰.۰: Module or ISAPI error occurred.
  2. ۵۰۰.۱۱: Application is shutting down on the web server.
  3. ۵۰۰.۱۲: Application is busy restarting on the web server.
  4. ۵۰۰.۱۳: Web server is too busy.
  5. ۵۰۰.۱۵: Direct requests for global.asax are not allowed.
  6. ۵۰۰.۱۹: Configuration data is invalid.
  7. ۵۰۰.۲۱: Module not recognized.
  8. ۵۰۰.۲۲: An ASP.NET httpModules configuration does not apply in Managed Pipeline mode.
  9. ۵۰۰.۲۳: An ASP.NET httpHandlers configuration does not apply in Managed Pipeline mode.
  10. ۵۰۰.۲۴: An ASP.NET impersonation configuration does not apply in Managed Pipeline mode.
  11. ۵۰۰.۵۰: A rewrite error occurred during RQ_BEGIN_REQUEST notification handling. A configuration or inbound rule execution error occurred.
  12. ۵۰۰.۵۱: A rewrite error occurred during GL_PRE_BEGIN_REQUEST notification handling. A global configuration or global rule execution error occurred.
  13. ۵۰۰.۵۲: A rewrite error occurred during RQ_SEND_RESPONSE notification handling. An outbound rule execution occurred.
  14. ۵۰۰.۵۳: A rewrite error occurred during RQ_RELEASE_REQUEST_STATE notification handling. An outbound rule execution error occurred. The rule is configured to be executed before the output user cache gets updated.
  15. ۵۰۰.۱۰۰: Internal ASP error.

البته خانواده خطای ۵۰۰ یا خطای سرور شامل ۱۱ نوع بسیار رایج هستند که می توانید در ویکی پدیا آنها را مشاهده کنید. به سایر اعضای این خانواده در مطالب بعدی می پردازیم.

چرا خطای سرور ۵۰۰ دریافت می کنید؟

دلایل زیادی پشت خطای ۵۰۰ سرور داخلی وجود دارد. برخی از این دلایل در زیر ذکر شده است:

  1. حافظه پنهان مرورگر و کوکی ها
  2. یوزر و پسورد پایگاه داده MySQL دستکاری شده یا حذف شده یا غلط است
  3. پایگاه داده آسیب دیده است
  4. هنگام نصب ورد پرس ناقص نصب شده است یا فایل های آن ناقص هستند یا نیاز به تغییر دارند
  5. اگر میزبانی پایگاه داده و فایل های سایت متفاوت باشد ممکن است مشکل از یکی از این سرورها یا هر دو باشد
  6. فایل htaccess آسیب ده باشد
  7. محدودیت حافظه PHP کافی نباشد
  8. مشکلات ناشی از پلاگین ها و تم های وردپرس
  9. خطاهای مهم PHP یا زمان بندی PHP با افزونه ها و پوسته ها
  10. مجوزهای دسترسی فایل و پوشه ها نادرست باشد
  11. مشکلی در CGI و اسکریپت پرل وجود داشته باشد

آیا خطای HTTP 500 روی سئو تاثیر می گذارد؟

اگر خطا برای چند دقیقه یا چند ثانیه رخ داده باشد، خیر آسیبی به سئو سایت شما نخواهد زد. اما اگر ساعت‌ها ادامه داشته باشد، می‌تواند تاثیر منفی بر رتبه‌بندی وب‌ سایت شما داشته باشد.

بنابراین، اگر سایت شما دائما خراب می شود و یا با خطای ۵۰۰ طولانی در بخشی یا کل سایت مواجه می شوید، باید با یک وب مستر و یا ارائه دهنده خدمات میزبانی خود تماس بگیرید.

چگونه خطای ۵۰۰ سرور داخلی را برطرف کنیم؟

حالا در این متن مفصل و ساده تا اینجا در مورد مشکل خطای سرور ۵۰۰ داخلی صحبت کرده ایم. اینکه این خطا چیست و چطور ایجاد شده و انواع مختلف آن.

اگر مشکلی از سمت کلاینت یا مشکلی در سرور وجود داشته باشد، خطای سرور HTTP 500 ممکن است رخ دهد. ما راه حل هایی را برای هر دو مشکل ارائه کردیم که می توانید در زیر مطالعه کنید:

صفحه مرورگر را بارگذاری مجدد کنید

اولین کاری که باید هنگام مواجه شدن با خطای ۵۰۰ HTTP انجام دهید این است که صفحه را مجدداً بارگیری کنید (F5 یا Ctrl + F5). ممکن است این امکان وجود داشته باشد که سرور به سادگی بیش از حد بارگذاری شده باشد و وب سایت به زودی در عرض چند ثانیه بازگردد.

همچنین می‌توانید سعی کنید وب‌سایت را در مرورگر دیگری باز کنید تا این مشکل را رد کنید.

همچنین می توانید با آنالیز وب سایت خود در این آدرس بررسی کنید که آیا مشکل از سمت شماست یا از سمت سرور.

این ابزار بسیار مفید است که کد وضعیت HTTP را که از سرور بازگردانده می شود، بررسی می کند. در صورتی که کد وضعیت ۲۰۰ نباشد، یک علامت پایین نشان می دهد.

همچنین ممکن است این خطا بلافاصله پس از به روز رسانی یک افزونه یا موضوع وب سایت خود رخ داده باشد. این مشکل در سرورهایی رخ می دهد که به درستی تنظیم نشده اند.

بنابراین آنها یک زمان از چند ثانیه را تجربه می کنند. بنابراین، بارگذاری مجدد صفحه می تواند این مشکلات را حل کند.

پس از پاک کردن کش و کوکی ها، مرورگر را مجددا راه اندازی کنید

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

برای Google Chrome، می‌توانید مراحل زیر را دنبال کنید:

  1. گوگل کروم را باز کنید
  2. روی ۳ نقطه موجود در سمت راست بالای مرورگر کلیک کنید
  3. به ابزارهای بیشتر بروید << پاک کردن کش مرور
  4. یا می توانید Ctrl + Shift + Delete را فشار دهید
  5. پنجره جدیدی برای پاک کردن داده های مرور باز می شود
  6. کادر کوکی‌ها و سایر اطلاعات سایت را به همراه تصاویر و فایل‌های ذخیره‌شده در حافظه پنهان علامت بزنید.
  7. بر روی دکمه “پاک کردن داده ها” کلیک کنید.

توجه: در صورتی که گذرواژه ها و حساب های کاربری ذخیره شده دارید حواستان باشد که از تب Advanced استفاده نکنید یا گزینه password and other sign in data را انتخاب نکنید.

برای Mozilla FireFox، می توانید مراحل زیر را دنبال کنید:

  1. Mozilla Firefox را باز کنید
  2. روی نماد کتابخانه در سمت راست بالای مرورگر کلیک کنید
  3. به تاریخچه بروید << پاک کردن تاریخچه اخیر
  4. روی منوی کشویی کنار محدوده زمانی کلیک کنید تا مشخص شود که چه مقدار از تاریخچه فایرفاکس شما پاک می شود (ساعت آخر، دو ساعت گذشته، چهار ساعت گذشته، روز جاری یا همه چیز).
  5. کادر کوکی ها و کش را علامت بزنید.
  6. بر روی دکمه “Clear Now” کلیک کنید.

توجه : در فایرفاکس هم حواستان به داده های کاربری ذخیره شده باشد.

گزارش ها یا Logs سرور را بررسی کنید

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

برای فعال کردن ورود به سیستم خطایابی در وردپرس می توانید کد زیر را در فایل wp-config.php خود وارد کنید:

توجه کنید این کد معمولا در فایل کانفیگ وردپرس وجود دارد، شما کافیست کد define( ‘WP_DEBUG’,  false) از false به true تغییر دهید. اگر هم true بود دست نزنید. همینطور می توانید با تغییر گزینه false به true در کد define( ‘WP_DEBUG_DISPLAY’, false ); خطاها را در وردپرس قابل نمایش کنید.

در این صورت حتما پس از اتمام خطایابی آن را مجددا به حالت false بازگردانید. توجه کنید در صورتی که نمایش خطا در define( ‘WP_DEBUG_DISPLAY’, false ); true باشند تمامی بازدیدکنندگان سایت شما خطاهای شما را خواهند دید.

define( ‘WP_DEBUG’, true );
define( ‘WP_DEBUG_LOG’, true );
define( ‘WP_DEBUG_DISPLAY’, false );

گزارش‌ها معمولاً در فهرست wp-content تحت نام Logs قرار دارند:

Apache (Apache: /var/log/apache2/error.log) یا NGINX (/var/log/nginx/error.log)

همچنین می توانید گزارش خطای PHP را فعال کنید. به سادگی کد زیر را به فایل ارسال خطا اضافه کنید. می توانید در تب کنسول Google Chrome DevTools به آن دسترسی داشته باشید.

 

ini_set(‘display_errors’, ۱);
ini_set(‘display_startup_errors’, ۱);
error_reporting(E_ALL);

شما همینطور می توانید با اضافه کردن کد زیر به فایل PHP.INI خطاها را مشاهده کنید:

display_errors = on

مشکل در ایجاد اتصال پایگاه داده

وردپرس از دستورات PHP برای اتصال به پایگاه داده MySQL، بازیابی اطلاعات مورد نیاز و سپس نمایش همه چیز روی صفحه استفاده می کند.

خطا در ایجاد اتصال پایگاه داده وردپرس زمانی رخ می دهد که اتصال بین MySQL و PHP به درستی کار نمی کند.

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

دلایل زیادی می تواند مشکل اتصال بین کد PHP و MySQL را به وجود بیاورد، مانند:

اطلاعات ورود به پایگاه داده

ممکن است یوزر یا پسورد پایگاه داده شما اشتباه باشد یا اخیراً تغییر کرده باشد. پایگاه داده MySQL از لاگین های جداگانه برای ایجاد ارتباط با وردپرس استفاده می کند.

پایگاه داده شما آسیب دیده است

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

فایل های وردپرس حذف یا خراب شده

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

برای این کار ابتدا نسخه مورد نظر خود را از اینجا دانلود کنید.

سپس فایل وردپرس را در کامپیوتر خود اکسترکت کنید. فایل های plugin و themes را حذف کنید و مجددا با فرمت zip فشرده کنید. در روت هاست آپلود و از حالت فشرده خارج کنید. اگر فایل های وردپرس در پوشه ای به نام wordpress بود کل فایل های داخل پوشه را به public_html منتقل و پوشه خالی wordpress را حذف کنید.

مشکلی در سرور میزبانی وب شما

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

ترافیک بیش از حد

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

 

شاید دوست داشته باشید:

بک لینک چیست و چرا نباید بک لینک خرید؟

چرا ایمیل مارکتینگ کسب و کار شما را رشد می دهد؟

ارسال پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *