Хорошо, это требует некоторого разъяснения. Некоторые предлагают размещать конфиденциальные данные вне корня документа. В этом есть некоторая заслуга, но в практическом плане это больше, чем все остальное.
Вы должны рассмотреть потенциальные источники проблем.
Кто-то, имеющий доступ к оболочке к компьютеру, скомпрометирует вашу информацию о подключении к базе данных независимо от того, где вы ее разместили. Сюда могут входить как авторизованные пользователи, так и те, кто использует уязвимость для получения доступа к оболочке (это часто случается);
Если PHP отключен или веб-сервер введен в заблуждение, то существует вероятность того, что файлы PHP будут обслуживаться в необработанном виде. Размещение их вне корня документа защитит вас от этого;
Если кому-то как-то удается записать PHP-скрипт в корень документа, это в основном то же самое, что кто-то, имеющий доступ к оболочке, поэтому никакие меры не защитят вас.
Практически, если ваш веб-сервер скомпрометирован, это так, случаи, когда ваши конфигурационные файлы находятся вне корневого каталога документа, защитят вас довольно маловероятно.
Главное, что нужно сделать с базами данных, - убедиться, что кто-то из Интернета не может подключиться напрямую. Это можно сделать с помощью брандмауэра, привязав базу данных к частному IP-адресу или поместив базу данных на частный сервер.