عیب یابی خطای سرور داخلی HTTP 500 مانند حل یک معما است.
شما نمی دانید دقیقا چه اتفاقی افتاده یا چرا اتفاق افتاده است – تنها چیزی که می دانید این است که چیزی اشتباه است و باید آن را اصلاح کنید.
برای راهنمایی شما از طریق عیب یابی خطای مخوف سرور داخلی HTTP 500، بیایید به معنای دقیق آن و رایج ترین علل و راه حل های آن بپردازیم.
خطای سرور داخلی HTTP 500 چیست؟
یک خطای سرور داخلی HTTP 500 یک پیام خطای عمومی است. مسائل غیرمنتظره ای را پوشش می دهد که در کدهای خطای موجود نمی گنجد. عیب یابی خطاهای HTTP 500 دشوار است زیرا طیف وسیعی از مشکلات در سمت سرور می تواند باعث ایجاد آنها شود.
در اینجا چند نمونه از ظاهر صفحه خطای 500 در مرورگر شما آمده است:
منبع تصویر
منبع تصویر
HTTP 500
خطاهای HTTP 500 مشکلات کامپیوتر، مرورگر یا اتصال اینترنت شما نیستند. در عوض، آنها یک پاسخ عمومی هستند که هر گونه خطای غیرقابل توضیح سرور را دریافت می کند. زمانی که مشکل سرور شما با کد خطای دیگری مطابقت نداشته باشد، خطای سرور داخلی 500 پروتکل انتقال HyperText (HTTP) را مشاهده خواهید کرد.
سایر کدهای خطای رایج
کدهای HTTP به شما نشان می دهد که مرورگر وب و وب سایت شما چگونه با هم ارتباط برقرار می کنند. اینها برخی از کدهای خطای رایج دیگری هستند که ممکن است در وب سایت خود مشاهده کنید:
HTTP 200
این یک کد وضعیت استاندارد برای وب سایت هایی است که عملکرد خوبی دارند.
HTTP 301
این کد برای تغییر مسیرهای دائمی است. به عنوان مثال، فرض کنید دو صفحه سایت در مورد ویجت ها با اطلاعات تکراری دارید و یکی از آنها ترافیک بیشتری نسبت به دیگری دریافت می کند. منطقی است که صفحه کم ترافیک را به صفحه پربازدید هدایت کنید تا سئو سایت شما بهبود یابد.
HTTP 302
این کد برای تغییر مسیرهای موقت است. این برای موقعیت هایی است که می خواهید کاربران را برای مدت کوتاهی به یک صفحه جایگزین بفرستید.
HTTP 304
این کد زمانی نمایش داده میشود که وبسایتی که درخواست میکنید از آخرین بازدید شما بهروزرسانی ندیده باشد.
HTTP 403
این کد زمانی از سرور می آید که می خواهید به یک URL محدود دسترسی پیدا کنید.
HTTP 404
کد 404 به کاربران شما می گوید که سرور شما نمی تواند صفحه ای را که با مرورگر خود درخواست کرده است پیدا کند. خطاهای 404 رایج هستند و برخی از سایت ها از آن به نفع خود استفاده می کنند.
HTTP 405
این یک خطای کد وضعیت پاسخ HTTP است. به شما می گوید که یک مرورگر وب می خواهد به صفحه وب شما دسترسی پیدا کند و سرور شما آن روش خاص HTTP را رد کرده است. این بدان معناست که مرورگر نمی تواند به صفحه وب درخواستی دسترسی پیدا کند.
HTTP 410
این یک کد دائمی است که به بازدیدکنندگان سایت می گوید صفحه مورد نظر آنها وجود ندارد.
HTTP 413
این کد زمانی ظاهر میشود که کاربر سعی میکند فایلی را آپلود کند که از حد مجاز فایل سرور بیشتر است.
HTTP 429
این خطا پاسخ سرور به توقف ارسال درخواست ها به دلیل بارگیری بیش از حد منابع است. اگر سایت شما نیاز به برقراری تماس های API بیش از حد برای پاسخگویی به یک درخواست داشته باشد، ممکن است این کد نشان داده شود.
HTTP 503
این کد به کاربران می گوید که سرور به طور موقت قادر به بارگیری صفحه مورد نظر آنها نیست.
برای مشاهده یک مرور کلی از کدهای خطا، این پست را بررسی کنید.
علل احتمالی خطای 500 سرور داخلی
خطای 500 سرور داخلی همانطور که از نامش پیداست یک مشکل کلی در سرور وب سایت است. به احتمال زیاد، این بدان معنی است که یک مشکل یا نقص موقت در برنامه نویسی وب سایت وجود دارد.
برخی از دلایل احتمالی خطای سرور داخلی 500 عبارتند از:
فایل Htaccess. خراب یا شکسته
فایل htaccess یک فایل متنی با دستورالعمل های مهم سرور است. این دستورالعمل ها به نرم افزار شما می گویند که عملکردهای خاصی را فعال یا غیرفعال کند. آنها ممکن است به شما در محافظت از رمزهای عبور در یک فهرست یا محدود کردن دسترسی کاربر کمک کنند.
راه های زیادی برای خراب کردن فایل htaccess وجود دارد. این می تواند در حین نصب افزونه، پیکربندی فایل یا زمانی که روی سرور خود کار می کنید اتفاق بیفتد.
یک خطای مجوزها
خطاهای مجوز با محافظت از فایل همراه است. خطاهای مجوز ممکن است اشکال، اشتباهات کاربر یا مشکلات شبکه باشد. معمولاً این خطا به این معنی است که کاربر مجاز به انجام عملی است که در حال انجام آن است.
پلاگین ها یا تم های شخص ثالث معیوب
برای افزایش ویژگیها و عملکرد کاربر، ممکن است یک تم یا افزونه شخص ثالث به وبسایت خود اضافه کنید. این افزونه ها می توانند برای سایت شما عالی باشند، اما می توانند بر امنیت، اشکالات و عملکرد سایت نیز تأثیر بگذارند.
این پلاگین ها و تم ها اغلب توسط افراد یا گروه های کوچک ایجاد می شوند. این می تواند چالش برانگیز باشد زیرا آنها ممکن است به زمان بیشتری برای رفع اشکالات و آسیب پذیری ها نیاز داشته باشند.
فراتر از حد مجاز حافظه PHP
PHP یک زبان برنامه نویسی سمت سرور است که در HTML تعبیه شده است. پی اچ پی برای مدیریت محتوا، پایگاه داده، ردیابی جلسات و موارد دیگر است. هر فرآیند PHP از حافظه استفاده می کند و حساب میزبانی شما برای هر یک از این فرآیندها محدودیت دارد.
اگر وب سایتی به بیش از این محدودیت حافظه نیاز داشته باشد، ممکن است خطای HTTP 500 را مشاهده کنید.
سازگاری مرورگر خطای HTTP 500
اکثر مشاغل وب سایت های خود را برای حداکثر سازگاری با مرورگر طراحی می کنند. این بدان معناست که دسترسی به وب سایت شما و استفاده از آن در هر مرورگر یا سیستم عاملی آسان است. اما ممکن است سایت شما در یک مرورگر کاملاً کار کند و در مرورگرهای دیگر دارای مشکل یا خطا باشد.
از آنجایی که HTTP 500 یک خطای فراگیر است، می توانید این خطا را در آن مشاهده کنید هر مرورگر و در هر سیستم عامل.
چگونه یک خطای HTTP 500 ممکن است ظاهر شود
این خطا می تواند در هر سایتی که سعی می کنید در مرورگر بازدید کنید ظاهر شود. از آنجایی که این یک خطای رایج است، راه های زیادی برای برقراری ارتباط با این کد وجود دارد.
- خطای سرور داخلی
- صفحه کار نمی کند
- 500 خطای سرور داخلی
- 500 خطای سرور
- 500. این یک خطا است.
- HTTP 500.0 – خطای سرور داخلی
- خطای 500
- کد خطا: 500
- سرور یک خطای سرور داخلی 500 را برگرداند
- خطای موقت (500)
نحوه رفع خطای 500 سرور داخلی
برخلاف سایر خطاهای سمت سرور مانند کد 502، خطای سرور داخلی 500 این است که بلافاصله به شما نمی گوید مشکل چیست. استو همچنین به شما نمی گوید که چگونه آن را تعمیر کنید. اگر خطا برای مدت طولانی در سایت شما باقی بماند، حتی می تواند بر سئو سایت شما تأثیر منفی بگذارد.
بنابراین، بیایید به چند راه حل بپردازیم تا بتوانید سعی کنید مشکل را برطرف کنید.
اگر می خواهید صفحه ای را با خطای سرور داخلی 500 بارگیری کنید:
1. صفحه را رفرش کنید.
این ممکن است بدیهی به نظر برسد، اما اگر یک مشکل بارگیری موقتی باشد، اگر صفحه را بهروزرسانی کنید، ممکن است موفقیتآمیز باشد. قبل از امتحان هر چیز دیگری در این لیست، صفحه را دوباره بارگیری کنید و ببینید چه اتفاقی می افتد.
2. بعدا برگرد.
از آنجایی که خطا در سمت سرور است، من مایلم شرط می بندم که صاحبان وب سایت در سریع ترین زمان ممکن برای حل مشکل کار می کنند. چند دقیقه یا تا یک ساعت یا بیشتر به آن زمان بدهید و سپس URL را دوباره بارگیری کنید و ببینید آیا تیم توسعه مشکل را برطرف کرده است یا خیر.
3. کوکی های مرورگر خود را حذف کنید.
اگر پاک کردن تاریخچه مرورگر کار نمی کند، ممکن است سعی کنید کوکی های مرورگر خود را حذف کنید. اگر کوکیها با صفحه وب مستعد خطا مرتبط هستند، حذف کوکیها ممکن است به بارگیری مجدد صفحه کمک کند.
4. URL خود را در وب سایت “Down for Everyone or Just Me” قرار دهید.
به downforeveryoneorjustme.com بروید و آدرس اینترنتی را که در آن خطای سرور داخلی مشاهده می کنید، قرار دهید. یا به شما می گویند که وب سایت فقط برای شما از کار افتاده است یا اینکه وب سایت برای همه از کار افتاده است.
اگر مشکل از سرور شما است، این باید به رفع هرگونه نگرانی در مورد مشکل کامپیوتر شما کمک کند.
اگر خطای 500 سرور داخلی در وب سایت خودتان است:
1. افزونه یا تم را غیرفعال کنید.
ممکن است نرم افزارها، افزونه ها یا اسکریپت های شخص ثالث تازه فعال شده با پیکربندی سرور فعلی شما در تضاد باشند. برای تعیین این موضوع، سعی کنید (با دقت) افزونههای نرمافزار خود را یکی یکی غیرفعال یا حذف کنید تا مشخص کنید دقیقاً چه چیزی باعث خطای سرور داخلی میشود.
اگر یک وب سایت وردپرسی دارید، انجام این کار با افزونه ها آسان است. از داشبورد خود، انتخاب کنید Plugins > Installed Plugins، سپس پلاگین اول را غیرفعال کنید. اگر خطا برطرف شد، می دانید که این افزونه بخشی از مشکل است. اولین پلاگین را دوباره فعال کنید، سپس این فرآیند غیرفعال کردن-فعال کردن مجدد را یکی یکی برای همه افزونه ها تکرار کنید تا مشخص شود کدام یک باعث خطای شما شده اند.
ممکن است متوجه شوید که داشتن پلاگینهای فعال کمتر در سایت شما به اجرای روانتر کارها کمک میکند.
از طرف دیگر، اگر به تازگی نرم افزار خود را ارتقا داده اید، ممکن است افزونه ها یا تم های فعلی شما با ارتقای جدید سازگار نباشند. غیرفعال کردن پلاگین ها یا تم ها یک به یک تا زمانی که خطا ناپدید شود، بهترین راه برای یافتن علت اصلی مشکل است.
2. از افزونه ای مانند WP Debugging برای شناسایی مشکل استفاده کنید.
اگر سایت شما از وردپرس پشتیبانی می کند و با فرآیندهای اشکال زدایی وردپرس راحت هستید، نصب یک افزونه را در نظر بگیرید تا به شما کمک کند مشکل سرور خود را شناسایی کنید.
به عنوان مثال، افزونه اشکال زدایی WP Debugging به شما کمک می کند دقیقاً متوجه شوید که چه مشکلی در سایت شما وجود دارد، که منجر به رفع سریعتر می شود.
منبع تصویر
3. مطمئن شوید که تنظیمات PHP شما به درستی پیکربندی شده است.
اگر مشکل مربوط به مهلت زمانی PHP است، برای حل این مشکل، قوانین مهلت زمانی یا مدیریت خطا را در اسکریپت خود ایجاد کنید. در اینجا لیست کاملی از دستورالعمل های php.ini برای پیکربندی تنظیمات PHP شما آمده است.
علاوه بر این، مجوزهای اشتباه روی فایل یا پوشه ای که دارای اسکریپت است، مانند اسکریپت PHP یا CGI، اجازه اجرای اسکریپت را نمی دهد. مجوزهای خود را بررسی کنید و مطمئن شوید که آنها را به درستی در سرور خود تنظیم کرده اید.
4. کد فایل htaccess. سایت خود را بررسی کنید.
کدنویسی نادرست یا ساختار نامناسب فایل htaccess شما می تواند دلیلی برای مشاهده خطای داخلی 500 باشد. فایل .htaccess به شما کمک می کند تا مدیریت کنید که چه مدت منابع باید در حافظه پنهان مرورگر ذخیره شوند. اگر خطای سرور داخلی 500 مشاهده کردید، فایل را ویرایش کنید.
برای مکان یابی فایل htaccess خود، از طریق یک مدیر فایل مانند cPanel یا از طریق FTP/SFTP به فایل های وب سایت خود دسترسی پیدا کنید. فایل احتمالا در شما قرار خواهد گرفت public_html فهرست راهنما. این احتمال وجود دارد که سرور شما به طور پیش فرض این فایل را از دید پنهان کند و برای دیدن آن باید فایل های مخفی را روشن کنید.
منبع تصویر
خطاهای کدنویسی در .htaccess و اسکریپت های سفارشی نیز می تواند باعث خطای سرور داخلی HTTP 500 شود.
5. مطمئن شوید که نرم افزار جدید شما به درستی نصب شده است.
در نهایت، بررسی کنید که آیا نرم افزار اخیراً نصب شده یا ارتقا یافته شما واقعاً نصب یا ارتقاء پیدا نکرده است. برای تازه کردن نرم افزار خود، وب سایت فروشنده را برای دستورالعمل ها بررسی کنید.
آخرین راه حل: از مدیر سرور کمک بخواهید
اگر عیبیابی مشکلات نرمافزاری محبوب یا اشکالزدایی اسکریپتهای سمت سرور، خطای سرور داخلی HTTP 500 شما را برطرف نکرد، باید شایعترین دلایل این نوع مشکل را در اسناد سرور خود بخوانید – خطای سرور داخلی HTTP 500 میتواند در موارد مختلف رخ دهد. سیستم عامل ها به دلایل متعدد
همچنین میتوانید از ارائهدهنده خدمات خود بخواهید به گزارشهای خطای شما دسترسی پیدا کند و شواهدی از علت اصلی مشکل شما پیدا کند.
خطاهای سرور داخلی آزاردهنده هستند، زیرا مفید نیستند – اساساً این روشی است که سرور وب می گوید: “اوه، مطمئن نیستم.” امیدواریم یکی از مراحل بالا مشکل را حل کند تا بتوانید مثل همیشه به زندگی بازگردید.
یادداشت سردبیر: این پست در ابتدا در اکتبر 2018 منتشر شد و برای جامعیت به روز شده است.