Я использую сервер Apache. Есть ли способ предотвратить доступ пользователей к моим включенным файлам напрямую? Но только разрешить серверу доступ к ним?
Другой способ состоит в том, чтобы включить файлы include вне каталога, из которого обслуживается сайт. Например:
/ includes/somefile.php http/index.php 
Таким образом, веб-сайт обслуживается с http /, но включает вне этого каталога, то есть никто не может получить к ним доступ непосредственно из веб-браузера, но ваши сценарии могут включать их следующим образом:
 <?php require_once '../includes/somefile.php'; [...] 
Поместите их в каталог за пределами корня веб-сайта.
  т.е. если index.php находится в /var/www/domain.com/www , /var/www/domain.com/www его в /var/www/domain.com/includes или что-то еще. 
Не помещайте включенные файлы под корнем документа (т.е. вне дерева файлов, которое apache предоставляет пользователю).