Лучший способ предотвратить прямой доступ к файлам - разместить их вне корня документа веб-сервера (обычно на одном уровне выше). Вы все еще можете включить их, но нет возможности доступа к ним через HTTP-запрос.
Обычно я прохожу весь путь и размещаю все мои файлы PHP за пределами корня документа, кроме bootstrap file - одиночный index.php в корневом каталоге документа, который начинает маршрутизацию всего веб-сайта / приложения.