Si te hacen eso, es por que el directorio esta en el DocumentRoot y con permisos de ejecución. Lo adecuado es que el directorio este fuera del DocumentRoot.
Ahora tocando el tema de la configuración algo que puedes hacer es utilizar variables de entorno:
http://php.net/manual/en/reserved.va...nvironment.php de esta forma lo datos sensibles estarán disponibles durante el tiempo de ejecución y podrías cargar esos datos desde un .htaccess:
http://kb.mediatemple.net/questions/...bles+in+PHP#gs
También existen otras soluciones mediante archivos y que utilizan las variables de ambiente:
https://github.com/bkeepers/dotenv