Réseaux et Infrastructure · Cours PDF
Cours Architecture Web 3 couches : PHP, Symfony et Docker (PDF)
En résumé
Téléchargez le cours d'Olivier Berger sur les architectures Web : maîtrisez le modèle 3 couches, le protocole HTTP et le développement client-serveur.
Architectures et applications Web — 3 niveaux
Il aborde le protocole HTTP : méthodes GET/POST, en-têtes essentiels (Cache-Control, Content-Type), codes de statut 200/404 et la structure des URL (absolues, relatives, query string) pour le routage REST.
Ce que vous allez apprendre
- Inspecter les échanges HTTP en local avec curl pour capturer en‑têtes et corps de réponse, analyser réponses 200/404 et mesurer temps de réponse avec --write-out.
- Sécurisation des formulaires : gestion des sessions et cookies, validation serveur, requêtes préparées SQL (INSERT/SELECT via PDO) et hachage bcrypt pour les mots de passe.
- Mettre en œuvre controllers Symfony et templates Twig, configurer l'injection de dépendances et définir routes REST dans le fichier de routing.
- Manipuler URL et query string pour générer liens absolus/relatifs et implémenter pagination (page=1, per_page=20) côté serveur.
- Améliorer les performances HTTP en réglant Cache-Control (max-age=3600), activer gzip et minimiser les en‑têtes pour réduire les allers‑retour réseau.
- Déployer l'application dans un conteneur Docker : Dockerfile optimisé, variables d'environnement DB_HOST et DB_PORT=3306, et configuration de la base MySQL.
- Étude de cas : implémentation d'une page de connexion utilisant POST, validation côté serveur, requêtes préparées et protection contre les injections SQL.
Le document analyse l'impact des en-têtes Cache-Control sur la performance client-serveur.
La partie 4 traite spécifiquement de l'évolution du Web vers un modèle de plate-forme logicielle.
Prérequis
- Notions de bases de données relationnelles : jointures INNER/LEFT, index B-tree et requêtes SQL de base.
- Connaissance des modèles client‑serveur et des protocoles réseau (IP, TCP) et des ports 80/443 pour HTTP/HTTPS.
- Expérience pratique en programmation Web, idéalement en PHP et familiarité avec un framework comme Symfony et l'usage de PDO.
Mise en garde : cette séparation présente des limites de scalabilité horizontale lorsque les besoins exigent des microservices ou une communication asynchrone (messaging/event-driven).
Mis à jour le 09/03/2026
Télécharger le cours PDF gratuitement
Accès immédiat · Aucune inscription requise
Télécharger le PDF gratuit