Aller au contenu

Start/Stop l'application

Démarrez l'application

Pour démarrer l'application, il suffit ouvrir un terminal :

Si vous avez la dernière version v2.x ou supérieur, le démarrage se passe avec la commande suivante :

php bin/edu start

Si vous avez la version v1.1 et inférieur, le démarrage se passe avec la commande suivante :

composer edu:start

Si vous êtes au niveau de la racine de votre projet, vous pouvez démarrer l'application avec la commande suivante

php -S localhost:8042 -t public

Voici un exemple de résultat de la ligne de commande :

Screen Start Edu App

Voici un exemple de résultat de la page web :

Screen Start Edu App

Adresse de l'application

Cette commande va démarrer le serveur de développement à l'adresse http://localhost:8042.

Les options de la commande start

La commande php bin/edu start dispose d'options (à partir de la version v2.3.0) :

Option Description
-p ou --port Permet de changer le port d'écoute du serveur de développement (défaut : 8042)
--no-start Vérifie les prérequis de votre environnement sans démarrer le serveur de développement

Exemple pour démarrer l'application sur le port 9090 :

php bin/edu start -p 9090

Exemple pour vérifier les prérequis sans démarrer le serveur :

php bin/edu start --no-start

Journalisation des requêtes

Lorsque le serveur est démarré via php bin/edu start, chaque requête HTTP reçue est journalisée dans une base SQLite (var/logs/core_logs.sqlite). Ces logs sont consultables depuis le profiler.

Arrêtez l'application

Pour arrêter l'application, il suffit ouvrir le terminal où vous avez démarré l'application et appuyer sur les touches CTRL + C.


Problème de démarrage

Failed to listen on localhost:8042 (reason: Address already in use)

Cette erreur vient que le port d'écoute (socket) 8042 est déjà utilisé (ou mal fermé) Pour résoudre cette erreur, vous pouvez "killer" le processus attaché au port d'écoute.

Sous Windows, la commande pour tuer le processus lié au port 8042 est légèrement différente. Voici comment vous pouvez le faire :

FOR /F "tokens=5" %P IN ('netstat -a -n -o ^| findstr :8042') DO TaskKill.exe /F /PID %P

Cette commande fonctionne en deux parties :

  1. netstat -a -n -o ^| findstr :8042 : Cette commande liste tous les processus utilisant le port 8042.
  2. TaskKill.exe /F /PID %P : Cette commande utilise le PID extrait pour tuer le processus.

La commande pour tuer le processus lié au port 8042 sur macOS est la suivante :

lsof -i :8042 | awk 'NR!=1 {print $2}' | xargs kill -9

Cette commande fonctionne en trois parties :

  1. lsof -i :8042 : Cette commande liste tous les processus utilisant le port 8042.
  2. awk 'NR!=1 {print $2}' : Cette commande extrait le numéro de processus (PID) de la sortie de la commande précédente.
  3. xargs kill -9 : Cette commande utilise le PID extrait pour tuer le processus.