Обнаружить истинную причину вывода на дисплей сообщения ошибка 500 Internal Server Error поможет изучение журнала сервера (error_log), в котором хранятся файлы, информирующие о работе системы, протоколы совершаемых действий и др. данные. Они находится в «Панели управления хостингом», в разделе «Сайты и домены» –> «Имя вашего домена» –> «Журналы».
Что приводит к внутренней ошибке сервера, как это исправить?
1. В основном, появление ошибки возникает при неверно указанных параметрах файла .htaccess. Он размещен в корневом каталоге вашего сайта:
Откорректировать его можно в подразделе «Файлы», воспользовавшись опцией «Файл менеджера».
Чтобы внести в файл изменения, уберите следующие директивы, если они встречаются:
- +ExecCGI
- AddHandler, php_value, php_flag
- MultiViews
Или попробуйте заменить директивы:
- Options +FollowSymLinks на Options +SymLinksIfOwnerMatch
- Options All -Indexes на Options -Indexes
2. Если указаны неправильные права и в error_log присутствует ошибка Script file is writable by others «Скрипт файл доступен для записи другими», тогда восстановите стандартные права файлов. Это возникает, если загружаются данные нового сайта либо выполнено восстановление из backup. Укажите вручную права 640.
3. Еще один вариант возникновения проблемы, когда используют устаревший синтаксис директивы FilterProvider, которая применяется для сжатия Content-Type. Если случай несложный, то достаточно изменить синтаксис директивы. На хостинге Ukrhost за сжатие отвечает nginx и до apache эти запросы попросту могут не доходить.
Для apache 2.2 директива выглядит так:
FilterProvider COMPRESS DEFLATE resp=Content-Type $text/html
В apache 2.4 так:
FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} = 'text/html'"
Если возникшую ошибку не получается исправить самостоятельно, то на помощь придут специалисты компании UkrHost, которые обеспечат стабильную работу и поддержку вашего хостинга, независимо от того, в каком населенном пункте Украины вы находитесь.