HTTP Error 500- خطای سرور داخلی

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

مشتریان وب داده می توانند در سی پنل در قسمت error log گزارش های خطای سرور را بررسی کنید . آنجا لیستی از آخرین ارور هایی که توسط سایت شما ایجاد شده است را مشاهده خواهید کرد. در این لیست شما اطلاعاتی راجع به هر ارور را خواهید دید که شامل موارد زیر می شود :

  • تاریخ و ساعت بروز ارور
  • توضیحات مربوط به ارور
  • اطلاعاتی راجع به آن پوشه یا فایلی که ممکن است خطا را ایجاد کرده باشد .

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

[Mon May 29 10:34:16.770700 2017] (13)Permission denied: [client 127.0.0.76] /home/user/public_html/.htaccess unable to check htaccess file, ensure it is readable

خطای بالا به طور عمده ناشی از سطح دسترسی نادرست فایل .htaccess یا پوشه ای است که در آن وجود دارد (در مثال زیر پوشه public_html قرار دارد).شما باید اطمینان حاصل کنید که فایل .htaccess دارای سطح دسترسی  644 است و دایرکتوری شما سطح دسترسی 755 دارد. شما می توانید سطح دسترسی فایل یا فولدر را از طریق SSH یا  FTP و یا مدیریت فایل (File manager )در  CPanel انجام دهید .

[Mon May 29 10:34:16.770700 2017] [client 127.0.0.76] /home/user/public_html/.htaccess: Invalid command, perhaps misspelled or defined by a module not included in the server configuration

خطا نشان می دهد که دستورات نادرست در داخل .htaccess  وجود دارد. اطمینان حاصل کنید که هر یک از آخرین تغییرات را با .htaccess تغییر دهید، زیرا آنها بیشترین احتمال ایجاد خطا را دارند.

[Tue May 30 04:22:08.084009 2017] [core:error] [pid 23000] [client 82.118.240.253:40236] End of script output before headers: filename

این خطا زمانی اتفاق می افتد که سطح دسترسی یکی از فایل هایتان بیش از حد باز است .  در مثال فوق، Filename نام فایل مورد نظر است. برای حل این مسئله ، سطوح دسترسی فایل به مشکل برخورده را به 644 تغییر دهید. این مقدار سطح دسترسی توصیه شده برای همه فایلهای وب سایت شماست.

[Thu Apr 19 01:47:39 2017] [client 127.0.0.76] Premature end of script headers: /home/user/public_html

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

شما می توانید فایل های وب سایتتان را از طریق SSH یا FTP و یا File manager  در سی پنل بررسی کنید تا علت بروز خطا را پیدا کنید . اغلب این log ها مربوط به خطای php  هستند .