Trois zones à ne pas confondre.
Seule racine exposée au serveur Web : index.php, images publiques et fichiers statiques.
Contrôleurs, modèles, vues, composants, services et déclaration des routes.
Framework installé, dépendances, cache, journaux et stockage d’exécution.
Le manifeste relie le projet à AML.
phpaml.json permet à AML de reconnaître la racine du projet, sa structure et les versions compatibles. Quand vous lancez aml serve depuis un sous-dossier, AML remonte jusqu’à ce manifeste.
project/
├── phpaml.json
├── public/
│ └── index.php
├── routes/
│ └── WebApp.php
├── src/
│ ├── controllers/
│ ├── models/
│ ├── middleware/
│ └── views/
└── runtime/Où placer un nouveau fichier ?
public/routes/src/controllers/src/models/src/views/runtime/VÉRIFIEZ VOTRE COMPRÉHENSION
Pourquoi .env et src/ ne doivent-ils pas être placés sous public/ ?
Afficher la réponse
Parce que public/ est la zone exposée au serveur Web. Les secrets et le code interne doivent rester hors de cette racine.
EN RÉSUMÉ
Ce qu’il faut retenir
- public/ est la seule racine Web.
- src/ et routes/ contiennent votre application.
- runtime/ peut être reconstruit.
- phpaml.json identifie et décrit le projet.