Cakephp, la carpeta de la aplicación no está en la raíz web, ¿por qué?

Cakephp, la carpeta de la aplicación no está en la raíz web, ¿por qué?

¿Por qué almacenar los archivos CakePHP fuera de webroot?

Por ejemplo, esta es la forma en que siempre me han dicho que lo haga.

/home/username
  /app
  /cake
  /public_html
      index.php

Sé que es por seguridad, pero ¿por qué? No es que los usuarios puedan ver archivos en la carpeta /app/ de todos modos. El htaccess lo impide, ¿correcto?

Si el usuario pudiera obtener un script malicioso en mi servidor web, no importaría si la carpeta /app/ estuviera en /public_html/ o fuera de webroot, aún así alteraría los archivos en la carpeta /app/, ¿verdad? ?

¿Entonces, para qué molestarse?

Respuesta1

¿Por qué correr el riesgo? Si no están en la raíz web, Apache nunca podrá servirlos por error. Seguro que no debería marcar la diferencia, pero va en contra deDirector de menor privilegio.

Además, normalmente querrás tener tu carpeta pública como raíz de la URL; enviar personas a www.example.com/home/username/public_html parece un poco desagradable.

información relacionada