La razón por la que debería considerar colocar este archivo fuera de la raíz web es que algunos proveedores de alojamiento han dejado de interpretar PHP de vez en cuando (debido a fallas de configuración, a menudo después de una actualización de su parte). Luego, el código se enviará en texto sin cifrar y la contraseña se publicará.
Considere esta estructura de directorios, donde public_html
es la raíz web:
/include1.php
/public_html/index.php
/public_html/includes/include0.php
Ahora considere este index.php :
<?php
include('includes/include0.php');
do_db_work_and_serve_page_to_visitor();
?>
Si el servidor web comienza a publicar este archivo abiertamente, no pasará mucho tiempo antes de que alguien intente descargar include0.php. . Nadie podrá descargar include1.php , sin embargo, porque está fuera de la raíz web y, por lo tanto, el servidor web nunca lo maneja.