Si los archivos secretos y la aplicación PHP están en el mismo servidor:
Colóquelos fuera de la "página web".
Por ejemplo, normalmente tienes un directorio como:
%código%
que se asigna a: enlace
Lo que luego debes hacer es colocar estos archivos encima de la carpeta public_html, como:
/public_html/cgi-bin/file.php
El archivo /somesecretdb.db
puede acceder a somesecretdb.db simplemente abriendo /public_html/cgi-bin/file.php
Pero el archivo no será accesible desde el "exterior".
Si los archivos secretos y la aplicación PHP están en servidores DIFERENTES:
Luego puedes usar la autenticación de IP, donde creas una regla de acceso o firewall, que solo permite el acceso al archivo desde el servidor que aloja tu aplicación.
Si se pretende que el servidor de archivos solo sea utilizado por el servidor de aplicaciones PHP, puede configurar el servidor de seguridad en el servidor de archivos para que solo pase las solicitudes del servidor de aplicaciones PHP al puerto 80.
Si el servidor de archivos está destinado para uso público (por ejemplo, algunos archivos deben ser accesibles directamente para los usuarios) y el uso privado, en su lugar, puede configurar el servidor web, utilizando .htaccess o el archivo de configuración, para indicarle que rechace las solicitudes de archivos privados, a menos que la IP de origen sea la misma que la del servidor de aplicaciones PHP.