Сегодня на одном моём сайте появилась Ошибка 500 Internal Server Error. На сайт я устанавливал скрипт гостевой книги: ковырялся в коде скрипта, закачивал файлы по ftp на сервер. Ну вот, что то намудрил, подумал я 🙁 . Сразу же удалил этот скрипт с сервера, проверил файл .htaccess на наличие каких-либо изменений. Но это злосчастная ошибка не исчезала.
Посмотрел логи ошибок на сервере. В логах был такой текст: Premature end of script headers — Преждевременный конец заголовков сценария. Стало очевидным, то что во всем виноват хостинг. Так как я удалил скрипт (который мог бы вызвать эту ошибку), файл .htaccess был пустой и по идее не мог вызывать такую ошибку.
Оставалось только написать в саппорт хостинга, чтобы помогли решить проблему. Но как назло, саппорт хостера не отвечал на мои вопросы. На письма хостинг отвечает обычно в течении 12 часов. А в icq, я до них не мог достучаться. Так всегда бывает, когда надо никого не найдешь в этой аське.
При выполнении всех этих действий, я совсем забыл про то, что на этом хостинге у меня было два сайта, и сайты размещались на разных аккаунтах. На втором сайте красовалась точно такая же ошибка: 500 Internal Server Error. Последние сомнения в том, что я что то намудрил при установке скрипта на сервер – испарились. Целых 10 часов 500 Internal Server Error весел на моих сайтах. И наконец то ответил саппорт хостинга:
Здравствуйте!
Просим прощения за это недоразумение.
Долго не могли выяснить в чем проблема.Сейчас должно все работать.
В следствии этого, если у Вас появилась ошибка 500 Internal Server Error, последовательность действий для обнаружения причины этой ошибки, должна быть примерно такой:
1. Смотрим логи ошибок (error .log), в них показываются все ошибки. И по ошибкам можно определить где и что пошло не так.
2. Проверяем файл .htaccess. Если Вы что то не корректно в нём прописали, исправляем.
3. Проверить права доступа на скрипты в папке cgi-bin. Права доступа на скрипты находящиеся в этой папке должны быть строго в 755.
4. Если Вы закачивали по ftp скрипт на сервер, должны были использовать режим текстовый (ASCII), если использовали режим двоичный (Binary), то скорее всего скрипт работать не будет и вызовет ошибку.
Если после выполнения этих действий ошибка 500 Internal Server Error не исчезла, то связывайте с саппортом хостинга и просите их помочь в решении проблемы. Может быть тех. поддержка Вашего хостинг ответит быстрее, чем моего 😐 .