Ошибка 500 "Internal Server Error"
Данная ошибка возникает в случае неправильной работы Ваших скриптов, либо неправильных настроек файла .htaccess.
Все возможные причины возникновения данной ошибки рассмотреть невозможно, поэтому рассмотрим основные:
1. Используются неправильные или недоступные директивы в файле .htaccess. Проверьте содержимое .htaccess на правильность синтаксиса. Просмотрите журнал ошибок (error.log), который доступен на FTP папка logs.
К примеру, в логе ошибок:
[DD MM xx hh:mm:ss yyyy] [alert] [client xx.xx.xx.xx] /var/www/username/www/Ваш_домен/.htaccess: Invalid command 'php_value', perhaps misspelled or defined by a module not included in the server configuration
php_value является директивой mod_php, который недоступен на сервере. Если Вы откроете файл www/Ваш_домен/.htaccess в Вашем аккаунте, то увидите строчки с проблемной директивой, к примеру:
php_value magic_quotes_gpc 0
Для устранения неполадки необходимо удалить строку либо закомментировать, используя символ «#»:
# php_value magic_quotes_gpc 0
Аналогичная ситуация при использовании php_flag:
[DD MM xx hh:mm:ss yyyy] [alert] [client xx.xx.xx.xx] /var/www/username/www/Ваш_домен/.htaccess: Invalid command php_flag', perhaps misspelled or defined by a module not included in the server configuration
Необходимо открыть /www/Ваш_домен/.htaccess и удалить либо закомментировать строчки содержащие эту директиву, к примеру:
#php_flag zlib.output_compression 1
Так же стоит быть осторожным с директивами Options MultiViews и SymLinksIfOwnerMatch.
MultiViews – может привести к отдачи сервером несуществующих страниц сайта. В случае обращения к несуществующей странице или разделу, будет произведена попытка поиска папки или файла с аналогичным именем и отдача его вместо запрашиваемого.
SymLinksIfOwnerMatch – разрешает веб-серверу использовать символьные ссылки, только если владелец файла или директории, на которую указывает эта ссылка совпадает с владельцем указанной директории. Если это условие не выполняется, то Ваши скрипты будут работать неправильно. Так же эта директива создает большую нагрузку на сервер из-за дополнительных системных запросов.
2. Некорректная работа скрипта. Возможно, в нем используются недоступные функции, либо просто скрипт имеет некорректный синтаксис или был поврежден при загрузке на сервер. Проверьте корректность синтаксиса. Если скрипт использует включения (includes) , проверьте, чтобы они и директории которые их содержат были доступны для чтения. Просмотрите лог ошибок /logs/ваш_домен.error.log чтобы определить точную причину.
3. Возможно Ваши скрипты используют исходящие соединения (это могут быть скрипты партнерских программ, счетчики и т.п.), которые не успевают отработаться на стороне стороннего сервера.
В случае если после проверки Вами Ваших скриптов Вы не смогли определить причину возникновения ошибки 500 - напишите нам, указав в какой период времени Вы наблюдали данную ошибку, мы поможем Вам определить причину, по которой данная ошибка возникает.