Tras descargar y extraer CakePHP, estos serán los ficheros y carpetas que deberías ver:
app
cake
plugins
vendors
.htaccess
index.php
README
Observarás 3 carpetas principales:
La carpeta app será donde haremos nuestra magia: es donde se ubicarán los ficheros de tu aplicación.
La carpeta cake es donde nosotros hemos hecho nuestra magia. Comprométete a no modificar los ficheros de esta carpeta. No podremos ayudarte si has modificado el núcleo.
Finalmente, la carpeta vendors es donde ubicarás las librerías PHP de terceros que necesites usar con tus aplicaciones en CakePHP.
La carpeta app de CakePHP es donde realizarás la mayor parte del desarrollo de tu aplicación. Veámos un poco más de cerca las carpetas dentro de app.
config
Contiene los (pocos) archivos de configuración que usa CakePHP. Detalles de conexión a bases de datos, arranque (bootstrapping), archivos de configuración del núcleo y demás deberían ser almacenados aquí.
controllers
Contiene los controladores de tu aplicación y sus componentes.
locale
Almacena archivos de cadenas de texto para la internacionalización.
models
Contiene los modelos de tu aplicación, comportamientos (behaviors) y orígenes de datos (datasources).
plugins
Contiene los paquetes de plugins.
tmp
Aquí es donde CakePHP almacena datos temporales. La información que realmente se almacena depende de cómo hayas configurado CakePHP, pero normalmente esta carpeta es usada para almacenar descripciones de modelos, registros (logs) y algunas veces información de sesiones.
Asegúrate de que esta carpeta existe y tiene permisos de escritura, ya que de lo contrario el rendimiento de tu aplicación se verá muy afectado. En modo debug CakePHP te avisará si este no es el caso.
vendors
Cualesquiera clases o librerías de terceros deberían ser ubicadas aquí.
Hacerlo así hace que sea más fácil de acceder a ellas usando la función
App::Import('vendor','nombre')
. Los observadores meticulosos notarán
que esto parece redundante, ya que también existe una carpeta vendors en
el nivel superior de nuestra estructura de directorios. Veremos las
diferencias entre las dos cuando discutamos acerca de la administración
de múltiples aplicaciones y configuraciones de sistemas más complejos.
views
Los archivos de presentación son ubicados aquí: elementos (elements), páginas de error, ayudantes (helpers), layouts y archivos de vistas.
webroot
En una configuración de producción, esta carpeta debería servir como la raíz del sitio (document root) para tu aplicación. Las carpetas aquí también sirven como lugares de almacenamiento para hojas de estilo en cascada (CSS stylesheets), imágenes y archivos JavaScript.