Installer NGINX sous Windows 10
NGINX est le second serveur web qui propulse les sites en PHP. Il se veut plus rapide qu’Apache, mais il est surtout fait pour servir du contenu statique. Cependant, sa conception le rend intéressant pour installer plusieurs version de PHP en simultané. Notez que Apache est également capable de le faire, mais ce petit tuto est là pour vous montrer une façon de faire sous Windows.
Téléchargez NGINX
Pour ce faire allez sur le site officiel sur cette page de et suivez les instructions (téléchargez la mainline). Nous prenons ici le parti de tout faire et de ne pas installer un équivalent de WAMP pour NGINX. (http://nginx.org/en/docs/windows.html)
Décompressez l’exécutable où vous voulez, démarrer le serveur équivaut à démarrer un programme quelconque (NGINX ne tourne pas comme un service Windows, c’est écrit sur la page).
Démarrer Nginx
allez dans le répertoire de votre nginx et tapez la commande >start nginx ensuite pour visualiser les process >>tasklist /fi "imagename eq nginx.exe" Nom de l’image PID Nom de la sessio Numéro de s Utilisation ========================= ======== ================ =========== ============ nginx.exe 15308 Console 17 8 260 Ko nginx.exe 15476 Console 17 8 588 Ko
Une fois que vous avez démarré l’exécutable, prenez connaissance de ces quelques commandes :
nginx -s stop fast shutdown nginx -s quit graceful shutdown nginx -s reload changing configuration, starting new worker processes with a new configuration, graceful shutdown of old worker processes nginx -s reopen re-opening log files
Notez que ces commandes n’ont pas l’air de marcher sous Windows 10, ça ne marche que si vous êtes dans le même répertoire que l’exécutable nginx.exe
. Cependant voici la commande qui tuera pour sûr les process partout :
taskkill /f /IM nginx.exe
Télécharger le zip PHP
Sur le site officiel, dans la section windows, Télécharger un package PHP 7.4, choisissez le thread safe 64bits si vous êtes sous Windows 10 (je suppose qu’en 2020, vous êtes dans ce cas)
Décompressez le zip dans un répertoire c:\PHP\7.4
constituez un fichier .bat
pour lancer le fichier C:\PHP\7.4\php-cgi.exe
, s’assurer que cet exécutable est dans le même répertoire que le php.exe
.
@ECHO OFF ECHO Starting PHP FastCGI... set PATH=C:\PHP;%PATH% rem c:\bin\RunHiddenConsole.exe C:\PHP\7.4\php-cgi.exe -b 127.0.0.1:9123
De même si vous voulez arrêter le process de Fast CGI voici la commande :
taskkill /f /IM php-cgi.exe
Ensuite dans le fichier de configuration de NGINX nginx.conf
dans la section server, ajoutez la ligne include fast-cgi.conf
:
server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php$ { root html; fastcgi_pass 127.0.0.1:9123; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; include fastcgi_params; include fastcgi.conf; } # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
Si vous n’avez pas cette ligne vous aurez un message « No input file specified ».
Démarrer le serveur NGINX avec le PHP Fast CGI
Démarrez le fichier batch, ensuite démarrez NGINX, allez dans le dossier c:\nginx\html (créez un fichier index.php), dans le navigateur allez à http://localhost
, votre page doit normalement s’afficher. Prochain article nous verrson comment affecter une version de PHP par virtual host.