ارور 500

 

 

خطای Internal Server Error 500 به دلایل بسیار متنوعی ایجاد شود ولی بیشترین و رایج ترین دلایل بروز این خطا می تواند از اعمال سطح دسترسی یا Permission نادرست بر روی فایل ها و دایرکتوری ها، Ownership نادرست در هاست، کد های نادرست در فایل php.ini یا فایل .htaccess ، درخواست های نامعتبر از سمت اسکریپت سایت و … باشد. این خطا با توجه به نام آن بسیاری از کاربران را به این اشتباه می اندازد که مشکلی در سرور وجود دارد ولی در واقع سرور مشکلی نداشته و با اعمال تغییرات در تنظیمات پیکربندی سایت معمولاً قابل رفع می باشد. جزئیات کاملی از خطاهای سایت در فایل Error Logs همیشه ذخیره می شود که در زمان مشاهده ی خطای 500 می توانید با مراجعه به این فایل اطلاعاتی در مورد عامل ایجاد این خطا دریافت کنید. این فایل در قسمت File Manager در هاست شما وجود دارد که لیستی از خطاهای سایت را همراه با تاریخ و جزئیات ارائه می دهد، جهت انجام این کار می توانید از آموزش نحوه مشاهده آخرین خطا های سایت از طریق فایل error log استفاده کنید.

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

در این مثال، سطح دسترسی پوشه غیر مجاز تعریف شده که برای رفع این مشکل باید سطح دسترسی پوشه را از 777 به 755 تغییر دهید. سطح دسترسی دایرکتوری ها و پوشه ها 755 می باشد ، اسکریپت های اجرایی شامل پوشه ی cgi-bin نیز دارای سطح دسترسی 755 می باشند. تصاویر، فایل های چندرسانه ای و فایل های متنی مثل HTML نیز دارای سطح دسترسی 644 می باشند.

شما می توانید ارور 500 سطح دسترسی ها را از طریق File manager واقع در دسته بندی Files در Cpanel یا سرویس گیرنده ی FTP و یا از طریق دستورات chmod در SSH/Bash ویرایش کنید.

ممکن است کاربران در فایل .htaccess خطوطی را اضافه کنند که در اثر عدم دانش کافی و بی دقتی حاوی کلمات نادرست یا متضاد با تنظیمات سرور باشند. در این حالت خطای 500 رخ خواهد داد. بهترین روش برای رفع این مشکل ، تبدیل خطوط مشکل دارد در فایل .htaccess به توضیحات یا Comment می باشد که کافی است در ابتدای خطوط کاراکتر # را درج کنید و فایل را ذخیره نمایید. برای مثال اگر محتوای فایل .htaccess شما به صورت زیر باشد:

برای اینکه خط دوم را کامنت کنید می بایست به این صورت عمل کنید:

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

 

 

در این حالت خطایی مشابه ذیل خواهید داشت:

 

این خطا به سادگی قابل رفع می باشد. کافی است در فایل مورد نظر ، دستور مجاز «SymlinksIfOwnerMatches» را به جای «FollowSymlinks» استفاده کنید یا خط مربوطه را حذف نمایید.

در این حالت خطایی مشابه ذیل خواهید داشت:

 

باز هم به سادگی می توانید ارور 500 این خطا را رفع کنید و یا آن را حذف نمایید. در این مورد دستور را به درستی پایان دهید :

این موارد تعداد کمی از خطاهایی می باشد که در اثر دستورات اشتباه در فایل .htaccess بروز می دهند ولی به صورت کلی پیغام های خطا به اندازه ی کافی در تشخیص خطا شما را راهنمایی می کنند و می توانید با دقت در خطاها به راحتی آن ها را رفع نمایید.

خطاهایی که در فایل php.ini می تواند رخ دهد به صورت زیر می باشند:

زمانیکه از فایل ها با پسوند یا بدون پسوندی متفاوت از پسوند های معمول استفاده می کنید می توانید از ForceType در فایل .htaccess استفاده کنید و نحوه ی استفاده از آن در سرور را تعیین کنید. (برای تمامی فایل های موجود در پوشه ی مربوطه و سرور های بدون phpsuexec)

برای مثال ، زمانیکه شما فایلی ارور 500 با نام item دارید ( مانند Nucleus برای استفاده از FancyURL) و می خواهید در سرور بعنوان فایل php تعریف شود ، می توانید از کد زیر در فایل .htaccess استفاده کنید:

البته در سرور هایی که دارای phpsuexec می باشند با کد فوق خطای Internal Server Error دریافت خواهید ، که این مشکل به راحتی با استفاده از SetHandler بجای ForceType در فایل .htaccess رفع خواهد شد:

 

 

در سرور های بدون phpsuexec می توان از php_value در فایل .htaccess برای تغییر تنظیمات php (در واقع بازنویسی تنظیمات از php.ini) استفاده نمود. در سرور های دارای phpsuexec استفاده از این دستور خطای Internal Server Error را ایجاد می کند. برای رفع این خطا شما می توانید از فایل php.ini که در همان پوشه ی ای که فایل .htaccess قرار دارد موجود است. در فایل php.ini می توانید تمامی تنظیمات مربوط به php را تغییر دهید. برای مثال اگر شما می خواهید short_open_tag را برابر با off قرار دهید، شما باید از short_open_tag? = off در فایل .htaccess استفاده کنید. با استفاده از فایل php.ini نتیجه به این صورت می شود:

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

 

خطای 500 Internal Server error که معنای آن مشکل در سرور داخلی500  می‌باشد یکی از متداول‌ترین کد وضعیت‌های HTTP  در رنج کدهای 5xx است. ارور 500 به این معنا است که موضوع یا مسئله‌ای اشتباه بر روی سرویس‌دهنده‌ی وب‌سایت (سرور یا هاست) قرار دارد که سرور یا سرویس‌دهنده قادر به تشخیص دقیق مشکل نیست که وجود این خطا در مدت زمان طولانی تاثیری بسیار نامناسب بر روی سئو و بازاریابی آنلاین کسب وکار شما دارد.

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

    مقاله دوم  

پیغام خطای 500 Internal Server error ممکن است به شکل‌های متعددی نمایان شود چرا که هر وب‌سایتی می‌تواند و اجازه دارد این پیغام را به دلخواه خود سفارشی سازد همانند صفحه 404 که طراحی هر سایتی بر روی این خطا متفاوت است.

برخی از متداول‌ترین پیغام‌هایی که شما می‌توانید در آن خطای HTTP 500 را مشاهده نمایید به صورت زیر است:

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

همان‌گونه که در بالا اشاره کردم، پیغام‌های خطا 500 حاکی از آن است که یک چیز یا مسئله‌ای در کل سایت اشتباه است.

بسیاری از اوقات، ارور 500 به معنی وجود مشکل در سرور (هاست) یا برنامه‌نویسی سایت است، و گاهی پیدا کردن این مشکل سخت و گاهی موقت است و به سادگی رفع می‌شود.

توجه: هر خطای 500 خودش زیرمجموعه های مختلفی می‌تواند داشته باشد، در بیشتر موارد اطلاعاتی ریز درباره‌ی علت بروز  یک خطای HTTP 500 ، زمانی ارائه می‌شود که آن خطا در یک سرور که از نرم‌افزار مایکروسافت IIS استفاده می‌کند، رخ دهد. به ارقامی که پس از عدد 500 ظاهر می‌شود توجه کنید مانند خطای HTTP 500.19– خطای سرور داخلی که به این معنی است که داده‌های پیکربندی نامعتبر است. پیغام‌های دیگر را در همین صفحه کمی پایین‌تر اورده‌ایم.

همان‌گونه که در بالا اشاره داشتم، خطای 500 ، خطایی است که از سوی سرویس‌دهنده (سرور) است، به این معنی که مشکل احتمالاَ ناشی از سیستم رایانه یا اینترنت، شما نیست، بلکه در عوض این مشکل به سرویس‌دهنده سایت شما (یا به اصطلاح هاست) بر‌می‌گردد.

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

همان‌طور که در بالا ذکر شد علت خطای 500 Internal Server در سمت سرور یا هاست است و ممکن است نحوه کدنویسی (اسکریپت) موجود در هاست مشکلاتی را به وجود بیاورد.

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

← توصیه شده برای شما

ارور unfortunately has stopped

 

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

در  برخی مرورگرهای اینترنت، پیغام The website cannot display the page، غالباَ زمانی نمایش می‌شود که ارور 500 Internal Server به وجود بیاید ولی گاهی در این مرورگرها در خطای 405 چنین پیغامی را هم نشان می‌دهد که شما در این صورت باید عنوان صفحه را مشاهده نمایید تا دریابید که خطای 500 است و یا خطای 405.

وقتی سرویس‌های گوگل مانند جیمیل یا گوگل‌پلاس ویا تلگرام با خطای 500 Internal Server مواجه می‌شوند، غالباَ این پیام به شکل موقت بوده و شاید کمتر از ۵ دقیقه هم حل شود.

اگر وب‌سایتی که خطای 500 را گزارش می‌دهد، در حال اجرای مایکروسافت IIS باشد، شما ممکن است با پیغام خطای اختصاصی‌تری نظیر آن چه که در زیر آمده مواجه شوید:

 

← توصیه شده برای شما

ارور 404

 

اطلاعات بیشتر در مورد این کدهای تخصصی IIS در این آدرس قابل دسترسی است.

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

 سئو سابت

Leave a Reply

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

} logo-samandehi