ارور 500 چیست؟ خطای 500 مشکلی است که گاهی وقتها هم کاربران از آن شاکی میشوند، هم مدیران سایتها! اما ارور 500 چیست و چطور ایجاد میشود؟ در مقاله امروز وبلاگ ایران سرور، به این سوال جواب میدهیم؛ به علاوه، یادتان میدهیم که چطور ارور 500 را رفع کنید! در ضمن میتوانید مقاله معرفی خطاهای HTTP را بخوانید تا با باقی کدهای خطا هم آشنا شوید.
ارور 500 چیست؟
ارور 500 که به آن خطای 500 یا HTTP Error 500 هم میگویند، یک خطا در سرور داخلی است. این خطا نشان میدهد که در سرور سایت، یک جای کار میلنگد و سرور نمیتواند جواب درخواست کاربر را بدهد. کد 500 یک کد وضعیت HTTP است که شاید دلایل مختلفی داشته باشد. از جمله این دلایل خطاهای برنامهنویسی و پیکربندی نادرست سرور است. در این مطلب قصد داریم تا به سوال ارور 500 چیست پاسخ دهیم و شما را با نحوه رفع آن آشنا کنیم.
خطای 500 به چه صورت در سایت ظاهر میشود؟
پیغام ارور 500 در شکلهای مختلفی ظاهر میشود، اما در هر صورت، معنای تمام آنها یکی است.
شما بسته به وبسایتی که در حال بازدید از آن هستید، ممکن است با یکی از پیغامهای زیر مواجه شوید:
- 500 – Internal Server Error
- Temporary Error – 500
- Internal Server Error
- HTTP 500 Internal Error
- 500 Error
- HTTP Error 500
- That’s an error
- 500 Internal Server Error
- کد خطا: 500
علت خطای 500 (HTTP Error 500) چیست؟
همانطور که قبلا بالاتر هم اشاره کردیم؛ خطای 500 یعنی مشکلی وجود دارد که باعث میشود سرور سایت نتواند جواب درخواست کاربر را بدهد. اما این مشکل مربوط به ارور 500 چیست؟ خب، دلایل مختلفی باعث بروز خطای 500 میشوند. اما اگر Microsoft Internet Information Services را نصب کرده باشید، میتوانید اطلاعات بیشتر و دقیقتری در مورد خطا به دست آورده و آن را برطرف کنید!
در جدول زیر میتوانید لیستی از خطاهای سرور را مشاهده کنید
کد خطا | توضیحات |
500.0 | خطای ماژول یا ISAPI رخ داده است. |
500.11 | برنامه روی وبسرور در حال خاموش شدن است. |
500.12 | برنامه مشغول راهاندازی مجدد (Restart شدن) روی سرور است. |
500.13 | وبسرور خیلی شلوغ است. |
500.15 | اجازه درخواست مستقیم برای Global.asax وجود ندارد. |
500.19 | دادههای پیکربندی نامعتبر است. |
500.21 | ماژول ناشناخته است. |
500.22 | پیکربندی ASP.NET httpModules پیدا نشد. |
500.23 | پیکربندی ASP.NET httpHandlers پیدا نشد. |
500.24 | پیکربندی ASP.NET impersonation پیدا نشد. |
500.50 | خطای بازنویسی، هنگام اجرای اعلان RQ_BEGIN_REQUEST |
500.51 | خطای بازنویسی هنگام اجرای اعلان GL_PRE_BEGIN_REQUEST |
500.52 | خطای بازنویسی هنگام اجرای اعلان RQ_SEND_RESPONSE |
500.53 | خطای بازنویسی هنگام اجرای اعلان RQ_RELEASE_REQUEST_STATE |
500.100 | خطای داخلی ASP |
ابزارهای پیدا کردن ارور 500 چیست؟
دقت در این نکته حائز اهمیت است که ارورهای 500 غالبا به دلیل نقص فنی سایت یا مشکل در کدنویسی بروز پیدا میکنند. برای یافتن این مدل خطاها میتوان از ابزارهای مدرن و به روز استفاده کرد که یکی از بهترین آنها Ahref است. با استفاده از قابلیتهای این ابزار به راحتی میتوانید روشهای برطرف کردن این خطاهای سرور را در اختیار داشته باشید.
همچنین، ابزارهایی مانند Screaming Frog برای اسکن کردن یک وبسایت مورد استفاده قرار خواهند گرفت و با آن میتوان به راحتی مشکلات فنی این چنینی را یافت. دقت داشته باشید که Semrush نیز از قابلیتهای ارزندهای در این مورد بهره میبرد که پس از ثبتنام در وبسایت آن میتوانید از امکانات آن استفاده کنید.
بیشتر بخوانید: رفع خطای Dns_probe_finished_nxdomain با سریع ترین روش
در سایت وردپرسی علت بوجود آمدن ارور 500 چیست؟
حالا که کمی با خطای 500 آشنا شدیم، بهتر است به علتهای بروز این مدل خطا در وب سایتهای وردپرسی نیز بپردازیم. پس از دانستن علت این خطاها به صورت سریع میتوانید مشکلات وبسایت وردپرسی خود را برطرف کنید:
خطا در کدهای سایت
مطمئنا وجود خطا در بخش کد یک وبسایت وردپرسی منجر به بروز خطاهای سرور خواهد شد. ناسازگاری کدها یا بهینه نبودن آنها میتواند دلیل بروز خطاهای 500 در سرور باشد.
خطا در افزونه ها و قالب
بسیاری از افزونهها یا حتی قالبها دارای خطاهای بسیاری در بخش کدنویسی هستند. این مشکلات مطمئنا احتمال بروز ارورهای سرور را تا حدود زیادی افزایش خواهند داد.
خطا در تنظیمات سرور
تنظیمات نادرست سرور امکان بروز خطاها را افزایش میدهد. به همین دلیل است که تنظیمات و پیکربندی سرورها باید توسط یک فرد متخصص و با تجربه انجام شود.
حملات امنیتی
حملات امنیتی بسیاری وجود دارند که احتمال بروز خطاهای 500 را افزایش میدهند. هکرها ممکن است کدهای مخرب به سایت تزریق کنند یا با نفوذ به سرور به کلی آن را با مشکل مواجه کنند.
روش برطرف کردن ارور 500 چیست؟
ما این موضوع را از ۲ زاویه بررسی کردیم: کاربر و مدیر سایت.
اگر کاربری هستید که در حال استفاده از یک سایت، با خطای 500 مواجه شدهاید، این ۲ تا کار را انجام دهید:
- حافظه کش مرورگر را پاک کنید (Ctrl + F5)
- کوکیهای این سایت را پاک کنید
اگر مشکل جدی نباشد، با این ۲ کار ممکن است دسترسیتان به سایت برقرار شود.
خب؛ حالا اگر مدیر سایت یا برنامهنویس باشید و بخواهید مشکل را ریشهای حل کنید، باید مراحلی که در ادامه میگوییم را پشت سر بگذارید.
مراحل برطرف کردن ارور 500 چیست؟
در این بخش راههای مختلف رفع خطا را بر اساس هاست و انواع CRM توضیح دادهایم.
بررسی error_log
اولین گام در صورت مواجه شدن سایت با خطا، بررسی Error Log سایت است؛ چون با مشاهده خطاهای لاگ میتوانید سریعتر مشکل را شناسایی کرده و برای رفع آن اقدام کنید.
خیلی وقتها، زمانی که خطای Internal Server Error را مشاهده میکنیم، دلیل ایجاد آن در قسمت Error Log کنترل پنل هاست موجود است.
اگر هاست سیپنل دارید، از قسمت Metrics روی گزینه Errors کلیک کنید.
برای کنترل پنل دایرکت ادمین هم وارد داشبورد آن شوید و روی گزینههای Site Summary / Statistics / Logs کلیک کنید. سپس از قسمت Web Error Log روی گزینه 100 lines کلیک کنید تا 100 خطای آخر به شما نمایش داده شود.
در سیستم های مدیریت محتوا امکان مشاهده خطا از طریق فایل کانفیگ آنها نیز مقدور است.
روش مشاهده ارور 500 چیست: وردپرس
فایل wp-config.php موجود در public_html هاست را باز کرده و مقدار WP_DEBUG’ را به true تغییر دهید.
روش مشاهده ارور 500 چیست: جوملا
جهت فعال کردن امکان مشاهده خطا در سایتهای جوملا در فایل configuration.php مقدار error_reporting را به کد زیر تغییر دهید.
;public $error_reporting = '1'
روش مشاهده ارور 500 چیست: پرستاشاپ
برای مشاهده خطاهای Prestashop باید فایل defines.inc.php در مسیر
/home/username/public_html/config
را ویرایش کنید و مقدار
;define(‘PS_MODE_DEV ‘, false)
را به
;define(‘PS_MODE_DEV ‘, true)
تغییر دهید.
توجه: پس از مشاهده خطا، تغییرات را به حالت قبل بازگردانید. چون مشاهده هشدارها و خطاهای سایت توسط بازدیدکنندگان درست نیست.
بیشتر بخوانید: ارور 403 چیست؟ آموزش روشهای رفع خطای 403
چک کردن فایل htaccess
برای بررسی این فایل نیاز است که نام فایل را تغییر بدهید. مثلا نام اصلی را به htaccess_old تغییر دهید.
برای این که مطمئن شوید مشکل از این فایل است یا نه، فایل را مثلا به htaccess_old تغییر نام دهید.
برای این کار وارد هاست و بخش filemanager شده و وارد پوشه public_html شوید.
فایل htaccess فعلی را به htaccess_old یا نام دلخواه خودتان تغییر دهید.
یک فایل جدید بنام .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
اگر بعد از این کار سایت را بدون خطا مشاهده کردید، پس مشکل حل شده است.
حالا باید خط به خط کدهای htaccess را به آن اضافه کنید تا ببینید مشکل از کدام خط بوده است.
غیر فعال کردن افزونه ها (پلاگین ها)
چه از وردپرس استفاده کنید، چه جوملا و چه هر سیستم مدیریت محتوای دیگری، روی سیستم مدیریت محتوای خودتان یک سری افزونه یا پلاگین (یا ماژول) دارید که شاید فعال بودن آنها منجر به خطای 500 شود.
پس روش بعدی این است که تک تک افزونههای سایت را غیرفعال کنید و ببینید با غیر فعال کردن کدام افزونه، خطای internal server error 500 سایت شما از بین میرود.
اگر به مدیریت سایت دسترسی ندارید، سطح دسترسی پوشه Plugins را از طریق File manager به صفر تغییر دهید.
بررسی تنظیمات پایگاه داده (Database)
مشخصات دیتابیس ایجاد شده در هاست حتما باید با مشخصات درج شده در فایل wp-config.php یکسان باشند.
به عنوان مثال در صورتی که سایت با وردپرس طراحی شده است، نام دیتابیس- نام یوزر دیتابیس و رمز باید با نام دیتابیس- نام یوزر دیتابیس و رمز یوزر ایجاد شده در هاست یکسان باشد.
تغییر قالب به قالب پیشفرض وردپرس
گاهی وقتها ممکن است خطای 500 وردپرس بهخاطر قالبی که استفاده میکنید باشد که برای اطمینان و راهکار نهایی میتوانید قالب فعلی را غیرفعال کرده و از یکی از قالبهای پیشفرض وردپرس استفاده کنید.
اگر به پیشخوان وردپرس دسترسی دارید به مسیر نمایش > پوستهها مراجعه کرده و یکی از قالبهای پیشفرض وردپرس را انتخاب کرده و روی دکمه فعال کردن کلیک کنید.
توجه: اگر دسترسی به پیشخوان وردپرس ندارید برای غیرفعال کردن قالب فعلی وارد هاست شده و در File Manager به مسیر public_html/wp-content/themes مراجعه کنید. سپس پوشه قالبی که در حال استفاده از آن هستید را انتخاب کرده و روی آن راست کلیک کنید. گزینه Rename را انتخاب کرده و در پنجره باز شده نام دلخواهی برای پوشه قالب انتخاب نموده و ذخیره کنید. در این صورت قالب غیرفعال شده و یکی از قالبهای پیشفرض وردپرس به عنوان قالب سایت فعال خواهد شد. سپس میتوانید سایت را بررسی کنید و ببینید که آیا همچنان خطای 500 در سایت نمایش داده میشود یا خیر!
در صورت رفع مشکل مشخص است مشکلی در تم استفاده شده وجود دارد که نیاز است از طریق پشتیبانی قالب خریداری شده آن را پیگیری کنید. حتی شاید قالب شما به پیشنیاز خاصی نیاز داشته باشد که در سرور میزبان فعال نباشد یا با نسخههای خاصی از php سازگار باشد.
دقت داشته باشید که در این روش حتما باید یکی از قالبهای پیشفرض وردپرس در سایت وجود داشته باشند. پس اگر پوشهای به جز پوشه قالب در این مسیر از هاست وجود ندارد قبل از انجام اینکار به آدرس fa.wordpress.org مراجعه کنید. سپس از داخل فایل zip دانلود شده به مسیر wp-content/themes مراجعه کرده و یکی از پوشهها را در هاست آپلود کنید.
خرابی فایل های وردپرس
گاهی ممکن است فایلهای اصلی هسته وردپرس شما خراب شده باشد. قبل از اعمال تغییرات حتما از اطلاعات بکاپ تهیه کنید، سپس آخرین نسخه وردپرس را از وبسایت رسمی آن دانلود کنید. حالا پوشه wp-content و فایل wp-config.php را از فایل دانلودی حذف کرده و سایر پوشهها و فایلهای موجود را با پوشه و فایل موجود در هاست خود تعویض کنید.
با این کار اطلاعات شما پاک نخواهند شد و فقط در صورت وجود مشکل از جانب هسته وردپرس، مشکل برطرف میشود.
سطوح دسترسی
در بسیاری از موارد امکان دارد سطوح دسترسی را در فایلهای وردپرسی تغییر دهید. برای این کار بهتر است با دقت بالایی اقدام کنید و با دانش فنی کافی این کار را انجام دهید. با استفاده از ابزار مدیریتی فایلها در وردپرس این سطوح دسترسی قابل تغییر هستند که پس اعمال نیز میتوانید آنها را به دقت بررسی کنید.
کمک گرفتن از پلاگین های دیباگینگ
شما با استفاده از پلاگینهای WP Debugging هم میتوانید عملیات بررسی خطا و رفع آن را انجام دهید. این پلاگینها اطلاعات دقیق و کاملی را در مورد خطاهای 500 در اختیار شما قرار خواهند داد. از جمله ابزارهای مطمئن و سریع در این مورد میتوان به Debug Bar اشاره کرد که تمامی قابلیتهای مورد نیاز را در اختیار شما قرار خواهد داد.
خطرات ارور 500 چیست؟ تاثیر روی سئو سایت
خطرات ارور 500 چیست؟ مطمئنا خطاهای سرور تاثیر منفی روی عملکرد سایت و تجربه کاربری دارند. به همین دلیل است که وجود خطاهای این چنینی به صورت مستقیم روی سئو سایت و رتبهبندی آن تاثیر منفی خواهد داشت. بنابراین، بهتر است در زمان مشاهده چنین خطایی به سرعت در مسیر رفع آن قدم بردارید. بهتر است هر از چند گاهی یک بررسی کلی از وبسایت انجام دهید تا در صورت مشاهده خطاهای این چنینی آنها را برطرف کنید.
حرف آخر
در این مطلب سعی کردیم تا به سوال ارور 500 چیست جواب دهیم. با طی کردن مراحل بیان شده به راحتی میتوانید از مشکلات این خطا رهایی پیدا کنید. ما راههای مختلف برای حل مشکل خطای 500 را پیش پایتان گذاشتیم؛ اگر در هر کدام از این راهها به مشکل خوردید، حتما در بخش نظرات مشکلتان را مطرح کنید تا شما را راهنمایی کنیم. اگر این مقاله برایتان مفید بود، آن را با دوستان خود به اشتراک بگذارید.
سوالات متداول
1. دلیل اصلی خطا 500 سرور چیست؟
دلیل اصلی این خطا بروز مشکلاتی روی سرور است که دراینصورت سرور قدرت پاسخ صحیح به درخواست را ندارد.
2. بهترین روش برای رفع ارور 500 در وردپرس چیست؟
برای رفع مشکل در سیستم مدیریت وردپرس بهتر است فایلهای لاگ خطا را بررسی کنید و براساس آن اقدامات صحیح را پیش بگیرید.
9 دیدگاه. دیدگاه تازه ای بنویسید
بسیار عالی و دقیق
ممنون از وقتی که میزارین
سلام لطفا راهنمایی کنید.
پشتیبانی هاست علت رو از خود سایت عنوان کرد.
خطای فایل erro_log
[25-Oct-2019 18:02:01 UTC] PHP Fatal error: Cannot access property WP_Recovery_Mode::$cookie_service in /home/test/public_html/wp-includes/class-wp-recovery-mode.php on line 80
و حالا لاین 80 از فایلی که خطا داشت:
$this->cookie_service = new WP_Recovery_Mode_Cookie_Service();
$this->key_service = new WP_Recovery_Mode_Key_Service();
$this->link_service = new WP_Recovery_Mode_Link_Service( $this->cookie_service, $this->key_service );
$this->email_service = new WP_Recovery_Mode_Email_Service( $this->link_service );
این خطا مربوط به تنظیمات هاست نیست، وردپرس را مجدد بروزرسانی نمایید و در صورت عدم رفع مشکل فایل class-wp-recovery-mode.php را از وردپرس خام جایگزین نمایید.
سلام خسته نباشید من این ارور چند وقت یکبار دریافت می کنم مثلا ده بار صفحه مورد خطا به درستی اجرا میشه و بار یازدهم با ارور http error 500 رو برو می شم و با رفرش سایت مشکل حل میشه ولی خب این روند دوباره تکرار میشه و سرچ کنسول گوگل هم این ارور به من به عنوان خطا نشون می ده و این مشکل از وقتی شروع شد که من از المنتور برای طراحی سایت استفاده کردم و الان هم المنتور پرو تهیه کردم و برای همین نیاز دارم این خطا رفع کنم بدون اینکه المنتور پرو حذف کنم تم سایت من هم سلام المنتور هست الان من باید چیکار کنم دقیقا که این خطا دیگه اصلا نمایش داده نشه و اینکه از افزونه کش راکت استفاده می کنم
البته هر از گاهی هم خطا با این مضمون دریافت می کنم از بعضی از صفحات که خطای مهم در وردپرس شما روی داده و پایینش هم لینک به مخزن آموزش رفع خطا وردپرس می ده
خیلی لطف بزرگی می کنید اگه من رو راهنمایی نمایید کنید که هردوی این خطا ها رو رفع کنم بدون حذف المنتور و تم
منتظر جوابتون هستم
احسان اسمعیلی
سلام
نیاز است ارور لاگ سایت را بررسی کنید تا ببینید در زمان خطای سایت چه اروری ثبت می شود، همچنین ممکن است بدلیل کمبود منابع سرور این مشکل رخ می دهد.
سلام وقت بخیر
دو هفته پیش یک ایمیل از سمت Cpanel برای من اومد که اخطار پر شدن 80 درصد از دیسک رو می داد
چند روز بعد خود به خود سایت من با ارور 500 مواجه شد و از اون روز دسترسی به سایت امکان پذیر نیست آیا امکانش هست که بخاطر پر شدن ظرفیت دیسک سایت از دسترس خارج شده باشه ؟
ممنون میشم راحنمایی بفرمایید
سلام پوریا جان؛
بله، ممکنه.
باید حجم رو بررسی کنید و اررو لاگ سایت رو هم چک کنید و ببینید خطا داره بازم یا نه.
اگر به دلیل پر شدن حجم نتونستید لاگین کنید به کنترل پنل، به پشتیبانی هاستینگتون تیکت بزنید تا بررسی کنن.
درباره بررسی ارور لاگ هم تو لینک زیر توضیح دادیم:
https://hub.iranserver.com/index.php?rp=/knowledgebase/1015/%D9%85%D8%B4%D8%A7%D9%87%D8%AF%D9%87-%D9%84%D8%A7%DA%AF-%D8%AE%D8%B7%D8%A7%D9%87%D8%A7-%D8%AF%D8%B1-%D8%AF%D8%A7%DB%8C%D8%B1%DA%A9%D8%AA-%D8%A7%D8%AF%D9%85%DB%8C%D9%86.html&__cf_chl_jschl_tk__=pmd_enTkJaoQSiFBehjbFDA8VHjCmIQZg32xvTsXTI3akkI-1629609619-0-gqNtZGzNAyWjcnBszQt9
سلام
خدا خیرتون بده مطلب بسیار مفیدی بود.
من میخاستم قالب نصب کنم که این مشکل برام پیش اومد و سایتم پرید.
حالا برعکس تمام قالب های پیش فرض رو هم پاک کرده بودم که تو این مطلب به این نکته هم اشاره شده بود.
با کمک مطلب شما مشکلم خیلی راحت حل شد.
متشکرم
ممنون از نظر انرژیبخشتون آقای قناد؛ خیلی خوشحالیم که مقاله براتون مفید بوده :)