Fornex
Европейский
хостинг

    500 (Internal Server Error, Внутренняя ошибка сервера) — код статуса в протоколе HTTP, сообщающий, что серверная программа работает, но встречается с серьёзными внутренними ошибками, препятствующими нормальной обработке запроса клиента.

    В стандартном режиме mod_php веб-сервер Apache запущен и всегда работает от одного пользователя - nobody. Это является далеко не самым безопасным решением поскольку ошибка в правах доступа позволит другим пользователям читать Ваши файлы или даже делать в них изменения. suPHP страхует от этой проблемы, поскольку теперь каждый процесс запускается от конкретного пользователя. Кроме этого, данный режим работы решает проблему когда скрипты делают изменения в файлах и после этого файлы нельзя удалить/изменить через FTP поскольку они имеют владельца nobody.

    Примечания по работе и новые права доступа:

    • 644 - запись в файл разрешена (по умолчанию)

    • 444 - запись в файл запрещена (только чтение и исполнение)

    • 755 - права доступа на папки (по умолчанию, менять не требуется)

    755 - должны стоять на папку /public_html/ваш_домен а также НЕ ИЗМЕНЯЙТЕ права на остальные системные папки/файлы (stats, logs, .htpasswd и на папку /domains). Все изменения должны касаться только папки /public_html/ваш_домен и её содержимого.

    Ни в коем случае не выставляйте chmod 666/777 на файлы/папки. Это может угрожать безопасности Вашего аккаунта, а также скрипты в любом случае с этими правами работать НЕ будут. Потому в целях дополнительной защиты и была произведена настройка режима suPHP вместо стандартного mod_php

    Обратите внимание - при правах доступа 644 запись разрешена только для скриптов которые запускаются в среде Вашего аккаунта. Никто другой запись произвести не сможет. Для ещё большего увлечения безопасности Вы можете сменить права доступа у файлов на 444 - в этом случае даже Ваши скрипты не смогут ничего записать в файлы, но это не обязательно.

    Ошибка Internal Server Error чаще всего означает что сервер заблокировал обращение к скрипту, это может быть по следующим причинам:

    • Вы выставили права доступа на файл(ы) отличающиеся от 644 или 444, сервер блокирует выполнение скрипта в целях безопасности (например - выставили CHMOD 666)

    • Вы выставили права доступа отличающиеся от 755 на папки(у). (например - выставили CHMOD 777)

    • Найдены не поддерживаемые директивы в файле .htaccess

    В режиме suPHP не поддерживается установка директив php_flag, php_admin_flag, php_value и прочих, которые изменяют какие-либо параметры PHP окружения.

    Для примера, если у Вас в .htaccess будет присутствовать запись вида:

    php_flag register_globals On  
    

    или например

    display_errors Off  
    

    Сервер вернёт ошибку 500 (Internal Server Error).