خطای داخلی سرور – خطای 500

چگونه خطای 500 Internal Server Error را رفع کنیم؟

خطای داخلی سرور یا اینترنال ارور 500 یکی از کدهای وضعیت رایج HTTP است و بدین معنی است که در سرور وبسایت مشکلی رخ داده است، اما سرور نمی تواند خطا را تشخیص دهد و بفهمد که مشکل واقعی در چیست. بنابراین اگر سرور نتواند مشکل را شناسایی کند، خطای عمومی 500 را اعلان می کند و عموما به آن 500 Internal Server Error گفته می شود.

رفع خطای 500 Internal Server Error

آیا شما یک وبمستر هستید؟

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

معمولا خطای 500 Internal Server Error به اشکال مختلفی دیده می شود، زیرا هر وبسایتی ممکن است طریقه بیان این خطا را سفارشی کرده و ویرایش کرده باشد، هر چند مفهوم همه یکی است. 500 Internal Server Error زمانی رخ می دهد که سرور نتواند نوع یا علت خطا را تشخیص دهد اما خطا را بطور کلی شناسایی کند.

در اینجا اشکال مختلف بیان خطای 500 Internal Server Error لیست شده است و ممکن است با هر یک از اینها بخصوص در زمان جستجوی وب مواجه شوید.

انواع خطای 500 Internal Server Error

500 Internal Server Error
HTTP 500 - Internal Server Error
Temporary Error (500)
Internal Server Error
HTTP 500 Internal Error
500 Error
HTTP Error 500
500. That's an error

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

علل خطای 500 Internal Server Error

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

معمولا سرورهایی که بر روی نرم افزار Microsoft IIS اجرا می شوند، به قولی سرور های ویندوزی، اطلاعات بیشتری در مورد علت وقوع 500 Internal Server Error ارائه می شود که معمولا به صورت یک عدد کد بعد از 500 بیان می شود از قبیل خطای HTTP Error 500.19 - Internal Server Error که به معنی وجود پیکربندی نامعتبر داده ها (Configuration data is invalid) است. در هر صورت خطای 500 Internal Server Error ممکن است به دلایل مختلف رخ دهد و در ادامه دلایل و طریقه رفع خطای 500 Internal Server Error بحث می شود.

چگونه خطای 500 Internal Server Error را برطرف کنیم؟

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

هرچند خیلی محتمل نیست، اما ممکن است در سمت شما مشکلی وجود داشته باشد، در هر صورت در اینجا مواردی که می توانید تصحیح یا بررسی کنید، بیان می شود:

  1. وب پیج را دوباره بارگذاری (Reload) کنید. می توان اینکار را با کلیک دکمه ، فشردن دکمه F5 صفحه کلید، یا وارد کردن مجدد آدرس وب سایت (URL) در آدرس بار مرورگر و فشردن دکمه Enter انجام داد.
    حتی اگر خطای 500 Internal Server Error به علت مشکلی در وب سرور رخ دهد، این مسئله معمولا موقتی است. ممکن است بارگذاری مجدد صفحه به رفع مشکل بیانجامد. پس یکی از راه های رفع خطای 500 Internal Server Error لود مجدد وب پیج است.
    توجه: اگر خطای 500 Internal Server Error در حین صدور فاکتور خرید کالای آنلاین و در فروشگاه های آنلاین رخ دهد، مواظب باشید که بارگذاری مجدد یا اقدام مجدد به پرداخت ممکن است موجب تولید فاکتورهای تکراری برای سفارش شود و در نتیجه مبلغ بیشتری پرداخت کنید. بیشتر بازارهای آنلاین برای مقابله با این خطا و پیشگیری از فاکتور تکراری، اقداماتی به عمل می آورند و پیش بینی هایی انجام می دهند.
  2. حافظه موقت (cache) مرورگر خود را خالی کنید. ممکن است مشکلی در نسخه کش شده وب پیج وجود داشته باشد و موجب بروز خطای 500 Internal Server Error شود. یکی از راه های تست این راه حل فشردن دکمه Ctrl + F5 کیبورد است.
    توجه: بندرت دلیل وقوع 500 Internal Server Error در نسخه های کش شده است، اما گاهی این مسئله رخ می دهد و با خالی کردن کش مرورگر مشکل رفع می شود. این یک اقدام ساده و بی خطر است و می توانید براحتی انجام دهید.
  3. کوکی های مرورگر خود را حذف کنید. بعضی از انواع خطای 500 Internal Server Error با خالی کردن کوکی های مرورگر رفع می شود. کوکی وب سایتی که خطا می دهد را حتما حذف کنید. برای اینکار کافی است به تنظیمات مرورگر رفته و در بخش cookies ، کوکی های موجود را حذف کنید. بعد از حذف کوکی ها، مرورگر خود را بسته و دوباره باز کنید و صفحه مورد نظر را باز کنید.
  4. روش مشکل زدایی خطای 504 Gateway Timeout errorرا تست کنید. هرچند این خطا نمی تواند از علل شایع خطای 500 Internal Server Error باشد، اما گاهی هست و مشکل زدایی این خطا به رفع خطای 500 Internal Server Error کمک می کند.
  5. با مدیر وبسایت مستقیما تماس بگیرید. ممکن است مدیر سایت خودش از وجود خطای 500 Internal Server Error آگاه باشد. اما بهتر است به وی گوش زد کنید و اطلاعات مورد نظر را به طرق دیگر مثل فایل آماده دریافت کنید.

نکته: اگر کل وبسایت داون بود و امکان ارتباط با مدیر سایت وجود نداشت، یعنی شما هم بایستی صرف نظر کرده و روز دیگری مراجعه کنید و زمانی برای رفع مشکلات سرور به مدیر بدهید.

طریقه رفع مشکل خطای 500 Internal Server Error در وبسایت خود

رفع خطای 500 Internal Server Error وبسایت خود نیازمند اقدامات متفاوتی است. همانطور که ذکر شد، بیشتر خطاهای 500 Internal Server Error سمت سرور بدین معنی است که مشکل در سرور شما بوده و بایستی رفع شود.

وب سایت ممکن است به دلایل مختلفی دچار خطای 500 سمت سرور شود و به کاربران وبسایت این پیغام را نشان دهد، اما دو علت شایع و اصلی خطای 500 Internal Server Error وب سایت عبارتند از:

  • وجود خطا در مجوز فایل ها (Permissions Error): در بیشتر موارد علت خطای 500 Internal Server Error وبسایت به خاطر ست کردن اشتباه مجوزهای یک یا چند فایل و پوشه در مدیریت فایل وبسایت است. در بیشتر این موارد، مجوز اشتباهی برای اسکریپت PHP یا اسکریپت CGI ست شده است. مجوز این فایل ها بایستی معمولا به 0755 (-rwxr-xr-x) ست شود.
  • تایم اوت PHP: اگر اسکریپت شما با منابع خارجی مرتبط است و آن منابع تایم اوت بدهند، خطای HTTP 500 رخ می دهد. قواعد تایم اوت یا بهتر بگوییم رفع خطای اسکریپت بایستی به شکل ست شده باشد که موجب خطای 500 شده باشد.
  • وجود خطا در فایل .htaccess: در حالی که این مشکل رایج نیست، اما اطمینان حاصل کنید که فایل .htaccess سایت را چک کرده و از صحت ساختار آن اطمینان حاصل کنید.

اگر از سیستم های مدیریت محتوا (CMS) مثل جوملا (Joomla) یا وردپرس (WordPress) استفاده می کنید، اطمینان حاصل کنید که پشتیبانی این سیستم های مدیریت محتوا را مطالعه کرده و از علل احتمالی بروز خطای 500 اطمینان حاصل کنید. همچنین شرکت های ارائه دهنده خدمات هاستینگ نیز راه حل هایی برای رفع خطای 500 Internal Server Error طبق تجربه خود دارند و بهتر است در صورت عدم موفقیت خودتان، با هاستینگ خود تماس بگیرید.

سایر خطاهای داخلی سرور که ممکن است با آن مواجه شوید

در مرورگر اینترنت اکسپلورر (IE)، پیغام The website cannot display the page در صفحه مرورگر نشانگر وقوع خطای 500 Internal Server Error است. خطای 405 Method Not Allowed نیز یکی دیگر از احتمالاتی است که ممکن است در مرورگر IE با آن مواجه شوید، اما می توانید در نوار عنوان مرورگر اطمینان حاصل کنید که خطای 500 یا 405 رخ داده است.

در مرورگر گوگل کروم مثل برنامه های جی میل (Gmail) یا گوگل پلاس (Google+) معمولا وقوع خطای 500 Internal Server Error به صورت خطای Temporary Error (500) یا فقط خطای 500 نشان داده می شود.

زمانی که در آپدیت ویندوز با خطای 500 Internal Server Error مواجه می شویم، ویندوز پیغام WU_E_PT_HTTP_STATUS_SERVER_ERROR را نمایش می دهد یا به صورت کد خطای 0x8024401F اعلان می کند.

در وب سایت هایی که بر روی سیستم عامل ویندوز سرور (Microsoft IIS) اجرا می شوند، وقوع خطای 500 Internal Server Error به صورت اختصاصی تر گزارش می شود و پیغام های خطای زیر ممکن است نمایش یابد:

شرح خطا کد خطا
خطای ماژول یا ISAPI رخ داده است 500.0
برنامه در وب سرور خاموش شده است 500.11
برنامه مورد نظر در وب سرور در حال بازنشانی است 500.12
وب سرور در حال حاضر مشغول است، بعدا مراجعه کنید 500.13
درخواست مستقیم Global.asax مجاز نیست. 500.15
اطلاعات پیکربندی معتبر نیست 500.19
ماژول ناشناس است 500.21
پیکربندی ASP.NET httpModules در مد Managed Pipeline قابل اعمال نیست. 500.22
پیکربندیASP.NET httpHandlers در مد Managed Pipeline قابل اعمال نیست. 500.23
تقلید پیکربندیASP.NET در مد Managed Pipeline قابل اعمال نیست. 500.24
خطای رونویسی در طی هندل کردن تذکره RQ_BEGIN_REQUEST رخ داده است. خطای پیکربندی یا اجرای قاعده درون سایتی رخ داده است. 500.50
خطای رونویسی در طی هندل کردن تذکره GL_PRE_BEGIN_REQUEST رخ داده است. خطای اجرای پیکربندی همگانی یا اجرای قاعده گلوبال رخ داده است. 500.51
خطای رونویسی در طی هندل کردن تذکره RQ_ SEND_ RESPONSE رخ داده است. خطای پیکربندی یا اجرای قاعده برون سایتی رخ داده است. 500.52
خطای رونویسی در طی هندل کردن تذکره RQ_RELEASE_REQUEST_STATE رخ داده است. خطای اجرای قاعده برون سایتی رخ داده است. این قاعده برای اجرای به روز رسانی قبل از کش شدن خروجی بر روی سیستم کاربر پیکربندی می شود. 500.53
خطای داخلی ASP رخ داده است. 500.100

اطلاعات بیشتر در مورد کدهای خطای خاص IIS را می توان در صفحه کد وضعیت HTTP میکروسافت یافت.

خطاهای شبیه خطای HTTP 500 Error

پیام های خطای مختلف زیادی وجود دارد که مرورگرهای مختلف برای اعلان خطای 500 Internal Server Error استفاده می کنند، زیرا این خطا یک خطای سمت سرور است از قبیل خطای 502 Bad Gateway، 503 Service Unavailable یا خطای 504 Gateway Timeout.

کدهای خطای HTTP سمت مددجوی (کلاینت ساید) زیادی وجود دارد که مشابه این خطا هستند از قبیل . همه این خطاها را می توانید در لیست خطاهای کد وضعیت (List of HTTP Status Code Errors) بیابید.

عضویت در خبرنامه پلکسا

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

با ما شریک شوید

با ما باشید

قابل توجه وبمسترها

وبمستر گرامی

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

سئوالات، نظرات، پیشنهادات و مطالب خود را با ما و کاربران پلکسا در میان بگذارید - انجمن پلکسا