
Lancer le serveur de développement intégré de Laravel
Apprenez à lancer le serveur de développement intégré de Laravel avec la commande `php artisan serve`. Visualisez votre application localement et personnalisez le port et l'hôte.
Visualiser votre application : le rôle du serveur de développement
Après avoir initialisé votre projet Laravel et exploré sa structure de dossiers, l'étape suivante, et sans doute la plus excitante, est de voir votre application en action. Pour cela, Laravel met à votre disposition un outil extrêmement pratique : un serveur de développement intégré. Ce serveur vous permet d'exécuter et de tester votre application localement sur votre machine sans avoir à configurer un serveur web complet comme Apache ou Nginx, ce qui est idéal pour le développement et le débogage rapide.
Ce serveur est basé sur le serveur web intégré de PHP. Il est spécifiquement conçu pour le développement et ne doit pas être utilisé en production. Son principal avantage est sa simplicité de mise en oeuvre : une seule commande Artisan suffit pour le démarrer. Cela vous permet de vous concentrer sur le codage de votre application plutôt que sur la configuration de l'infrastructure serveur en phase de développement.
Voyons ensemble comment utiliser cette fonctionnalité essentielle pour donner vie à votre projet Laravel sur votre navigateur.
La commande magique : `php artisan serve`
Pour démarrer le serveur de développement de Laravel, ouvrez votre terminal ou votre invite de commandes. Assurez-vous que vous êtes bien positionné à la racine de votre projet Laravel (le répertoire qui contient le fichier artisan). Ensuite, exécutez la commande suivante :
php artisan serveUne fois cette commande lancée, vous devriez voir un message similaire à celui-ci s'afficher dans votre terminal :
Starting Laravel development server: http://127.0.0.1:8000
[Thu Mar 21 10:30:00 2024] PHP 8.2.12 Development Server (http://127.0.0.1:8000) startedCe message indique que le serveur de développement a démarré avec succès et qu'il écoute les requêtes sur l'adresse IP 127.0.0.1 (qui correspond à votre machine locale, aussi connue sous le nom de localhost) et sur le port 8000. Le port 8000 est le port par défaut utilisé par php artisan serve.
Maintenant, ouvrez votre navigateur web préféré (Chrome, Firefox, Safari, Edge, etc.) et entrez l'adresse http://127.0.0.1:8000 ou http://localhost:8000 dans la barre d'adresse. Si tout s'est bien passé, vous devriez voir la page d'accueil par défaut de Laravel. Félicitations, votre application Laravel est maintenant en cours d'exécution sur votre machine !
Le terminal dans lequel vous avez lancé la commande php artisan serve restera actif et affichera les logs des requêtes HTTP au fur et à mesure que vous naviguez dans votre application. Pour arrêter le serveur de développement, retournez simplement à cette fenêtre de terminal et appuyez sur Ctrl+C (ou Cmd+C sur macOS).
Personnaliser l'hôte et le port du serveur
Bien que l'adresse par défaut 127.0.0.1:8000 convienne à la plupart des cas d'utilisation en développement local, il peut arriver que vous ayez besoin de démarrer le serveur sur un hôte ou un port différent. Par exemple, le port 8000 pourrait déjà être utilisé par une autre application sur votre machine, ou vous pourriez vouloir rendre votre application accessible à d'autres appareils sur votre réseau local.
La commande php artisan serve accepte des options pour personnaliser l'hôte et le port :
- Pour changer le port : Utilisez l'option
--port. Par exemple, pour démarrer le serveur sur le port 8080 :
php artisan serve --port=8080Votre application sera alors accessible à l'adresse http://127.0.0.1:8080.
- Pour changer l'hôte : Utilisez l'option
--host. Par exemple, pour rendre votre application accessible depuis d'autres appareils sur votre réseau local, vous pouvez utiliser l'adresse IP de votre machine sur le réseau (par exemple,192.168.1.100) ou spécifier0.0.0.0pour écouter sur toutes les interfaces réseau disponibles :
php artisan serve --host=0.0.0.0Si vous utilisez --host=0.0.0.0, votre application sera accessible via l'adresse IP de votre machine sur le réseau local, suivie du port (par exemple, http://192.168.1.100:8000). Attention, cela peut soulever des questions de sécurité si votre pare-feu n'est pas correctement configuré, car cela rend potentiellement votre application accessible depuis l'extérieur de votre machine.
- Vous pouvez combiner ces options : Par exemple, pour démarrer sur l'hôte
0.0.0.0et le port8888:
php artisan serve --host=0.0.0.0 --port=8888Ces options offrent une flexibilité appréciable pour adapter le serveur de développement à différents contextes. Par exemple, si vous travaillez sur une machine virtuelle et souhaitez accéder à votre application depuis la machine hôte, ou si vous voulez montrer une démo rapide à un collègue sur le même réseau.
Que faire si `php artisan serve` ne fonctionne pas ?
Dans la plupart des cas, php artisan serve fonctionne sans accroc. Cependant, quelques problèmes courants peuvent survenir :
- Port déjà utilisé : Si vous voyez une erreur indiquant que l'adresse est déjà utilisée (par exemple, "Address already in use"), cela signifie qu'une autre application utilise déjà le port 8000 (ou celui que vous avez spécifié). La solution la plus simple est de choisir un autre port avec l'option
--port, comme--port=8001. - Dépendances manquantes ou incorrectes : Si vous avez cloné un projet existant et que vous n'avez pas encore installé les dépendances, vous pourriez rencontrer des erreurs. Assurez-vous d'avoir exécuté
composer installà la racine du projet. - Problèmes de permissions : Sur certains systèmes, des problèmes de permissions sur les dossiers
storageoubootstrap/cachepeuvent empêcher le serveur de démarrer ou l'application de fonctionner correctement. Assurez-vous que votre serveur web (ou l'utilisateur PHP) a les droits d'écriture sur ces répertoires. Les commandes typiques pour cela sur un système Unix pourraient êtresudo chown -R www-data:www-data storage bootstrap/cache(adaptezwww-dataà l'utilisateur de votre serveur web) etsudo chmod -R 775 storage bootstrap/cache. Attention cependant à ne pas appliquer des permissions trop laxistes en production. - Fichier
.envmanquant ou mal configuré : Assurez-vous d'avoir un fichier.envà la racine de votre projet (vous pouvez le créer en copiant.env.example) et qu'une clé d'application a été générée (php artisan key:generate).
Le serveur de développement php artisan serve est un outil simple mais puissant qui accélère considérablement le cycle de développement avec Laravel. Sa facilité d'utilisation vous permet de vous concentrer sur l'écriture de votre code et de voir les résultats instantanément dans votre navigateur. N'oubliez pas, cependant, qu'il est destiné uniquement au développement local et ne doit pas être utilisé pour héberger des applications en production. Pour la production, des solutions plus robustes comme Nginx ou Apache, combinées avec PHP-FPM, sont recommandées.