Language nerds: PHP local dev server
Interpreterul PHP dispune de un web server, foarte util pentru development
Încă de la versiune 5.4, PHP dispune de un web server pentru depanarea și rularea scripturilor sub PHP SAPI. Îl poți folosi ca să testezi rapid rularea unui script din borwser sau la o cerere Ajax:
Dar pe lângă asta, mai putem configura un director, din care să fie ales un index.php sau index.html, cu fișiere statice și non-statice, sau chiar să rutăm cererile în funcție de cale. Sintaxa pentru acest utilizar este următoarea:
php -S [domeniu|ip]:[port] [-t dosar] [script]
De exemplu, pentru a servi un director, folosim opțiunea -t urmată de calea acestuia:
Toate fișierele din server/public vor fi servite direct (imagini sau html), iar fișierele cu extensia .php vor fi executate.
Rutarea cererilor
Putem crea un ruter pentru a simula o aplicație care direcționează cererile către alte funcții sau fișiere, în funcție de cale:
Iar începând cu versiunea 7.4, putem configura un număr de instanțe (workers) care să fie lansate individual folosind variabila PHP_CLI_SERVER_WORKERS
. Astfel putem testa cu cereri concurente către același script. În cazul în care avem un singur worker, cererile vor aștepta una după cealaltă. Așadar e bine să configurăm cel puțin 2 workeri dacă pe lângă scriptul de php mai servim și alte resurse în pagină cum ar fi fișiere css, javascript sau imagini:
Referințe