Publicare GRATUITĂ articole educaționale !

Se acordă adeverință ISSN

Limbajul PHP (Hypertext Preprocessor) este unul dintre cele mai populare limbaje de programare de tip scripting, utilizat în principal pentru dezvoltarea de pagini web dinamice și interactive care se execută pe serverul web. Pe sistemele de operare Windows, PHP poate fi integrat cu IIS (Internet Information Services) folosind mecanismul FastCGI, care oferă performanță și stabilitate.

Cerințe:

  • Sistem de operare: Windows 10/11 sau Windows Server (2008-2025).
  • Permisiuni: cont cu drepturi de administrator.
  • PHP: este recomandată utilizarea versiunii Non-Thread Safe (NTS) a PHP când rulezi cu FastCGI în IIS.

Activare IIS și a modulul CGI

  • Accesează: Control Panel -->> Programs and Features  -->>  Turn Windows features on or off.
  • Selectează:
    1. Internet Information Services;
    2. World Wide Web Services;
    3. Application Development Features;
    4. CGI.
  • Confirmă cu OK.

Consultați ghidul complet pentru instalarea IIS web server în Windows .

Descărcare PHP versiunea NTS (Non-Thread Safe):

Descarcă de pe pagina oficială windows.php.net arhiva ZIP a versiunii Non-Thread Safe pentru Windows (x64 sau x86), în funcție de arhitectura sistemului.

Extragere fișiere PHP și configurare permisiuni

  1. Se creează directorul (folder-ul) C:\PHP.
  2. Extrage conținutul arhivei zip PHP și copiați fișierele în directorul C:\PHP.
  3. Fișierul ini-production din directorul C:\PHP se copiază în aceeași locație și se redenumește în php.ini.
  4. Acordați permisiuni de citire și scriere (Read/Write) utilizatorului local IIS_IUSRS, pentru directorul C:/PHP .
Folder cu fișiere PHP
Folder-ul C:/PHP în File Explorer, cu fișierele PHP (zoom)

Setarea variabilei în Environment Variables pentru PHP

  1. Click dreapta pe This PC -->> Properties -->>Advanced system settings -->> Environment Variables -->>Path -->> Edit -->> New
  2. adăugă: C:\PHP
Environment Variables - PHP
Adăugare parametri în „Environment Variables” pentru calea C:\PHP.

Comanda de verificare a versiunii de PHP instalate: deschide Command Prompt și introdu comanda: php -v

C:\Users\Administrator>php -v
PHP 8.4.14 (cli) (built: Oct 22 2025 08:46:50) (NTS Visual C++ 2022 x64)
Copyright (c) The PHP Group
C:\Users\Administrator>

Editarea fișierului php.ini și activarea extensiilor

Varianta 1. Pentru a funcționa corect PHP în IIS este necesara activarea extensiilor și anumitor funcții caracteristice, în funcție de necesitățile utilizatorului. Se deschide în notepad fișierul php.ini și se „decomenteză” și editează liniile de cod:

extension_dir="C:\PHP\ext"
extension=mysqli
extension=curl
extension=mbstring
date.timezone = "Europe/Bucharest"

Varianta 2. Pentru o evidență și accesare mai facilă a extensiilor și setărilor activate, se poate adăuga la sfârșitul fișierului php.ini toate modificările (în acest caz nu se mai utilizează Varianta 1). Se pot adăuga sau se pot elimina extensii în funcție de necesități.

[WebPIChanges]
; calea către directorul care conține extensiile
extension_dir = "C:\PHP\ext\"
; calea către fișierul unde vor și listate erorile
error_log=C:\WINDOWS\temp\PHP_errors.log ; directorul unde se salvează fișierele temporare
session.save_path=C:\WINDOWS\temp
cgi.force_redirect = 0
cgi.fix_pathinfo = 1
fastcgi.impersonate = 1
fastcgi.logging = 0
; opțional setare fus orar
date.timezone = Europe/Bucharest

[ExtensionList]
extension=php_curl.dll
extension=php_exif.dll
extension=php_fileinfo.dll extension=php_gd.dll
extension=php_gettext.dll
extension=php_imap.dll
extension=php_intl.dll
extension=php_mbstring.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_openssl.dll
extension=php_soap.dll
extension=php_tidy.dll
extension=php_zip.dll
Fișierul php.ini deschis în Notepad
Fișierul php.ini editat  cu setări și extensii activate în Notepad (zoom)

Configurare Handler Mapping

Deschide IIS Manager -->> Handler Mappings, în partea dreaptă a modulului selectează Add Module Mapping:

IIS Manager - Handler Mappings - PHP
Fereastra IIS Manager accesare: modul Handler Mappings (zoom)
  • Request path: *.php
  • Module: FastCgiModule
  • Executable: C:\php\php-cgi.exe
  • Name: PHP_via_FastCGI
  • Tabul - Request Restrictions: Mapping (resourceType): File or folder; Verbs: GET, HEAD, POST;  Acces: Script.
Add Module Mapping - php
Fereastra „Add Module Mapping” cu parametri completați.

Configurare FastCGI Settings

Deschideți IIS Manager (Start -->> tastați „IIS” -->> „Internet Information Services - IIS Manager”).

Selectați serverul în panoul IIS (din partea stângă în consola IIS) -->> selectați modulul FastCGI Settings -->> din partea dreaptă în consolă Add FastCGI Application sau Edit FastCGI Application dacă setarea a fost configurată automat.

FastCGI Settings - PHP
Fereastra IIS Manager accesare: modul FastCGI Settings (zoom)

De regula setările se creează automat după ce s-a configurat Handler Mappings, este bine să verifici și să corectezi dacă este cazul. Adaugă (ajustează) în FastCGI Settings următorii parametri:

  • Full path: C:\PHP\php-cgi.exe
  • Instance MaxRequests: 10000
  • Activity Timeout: 300
  • Monitor changes to file: C:\PHP\ini
  • Standard error mode: ReturnStdErrIn500
  • Request Timeout: 300

 

Add FastCGI Application - PHP
Configurare parametri pentru PHP în „Add FastCGI Application”

La parametrul Environment Variables: -->> adaugă sau editează dacă este cazul:

  1. Name: PHPRC; value: C:\PHP\ (locația directorului in care se afla fișierul ini)
  2. Name: PHP_FCGI_MAX_REQUESTS; value: 10000
EnvironmentVariables Collection Editor - PHP
 Editare/adăugare parametri în secțiunea EnvironmentVariables Collection Editor (zoom)

Pentru utilizatorii mai avansați aceste setări pentru FastCGI și Handler Mapping se pot realiza direct din Command Line (Command prompt) sau prin intermediul unui fișier BAT, detalii pe siteul PHP: Installation with IIS for Windows.

Verificare instalare PHP

  1. Creează fișierul index.php în folderul site-ului, de ex.: C:\inetpub\wwwroot\index.php.
  2. Editează conținutul fișierului:
<?php
phpinfo();
  1. Deschide browser-ul și accesează http://localhost/ , se va afișa pagina phpinfo().

Concluzie

Utilizarea PHP pe Windows vine cu o serie de beneficii practice, în special în medii de dezvoltare locală sau pentru dezvoltatorii care lucrează într‑o infrastructură bazată pe un mediu Windows. Avantajul utilizării limbajului PHP împreună cu IIS (Internet Information Services), serverul web nativ din Windows constă într-o instalare și configurare ușoară. Pachete precum XAMPP, WampServer sau Laragon permit instalarea rapidă a unui mediu complet (Apache/MySQL/PHP) și care nu necesită configurări complicate de compilare, așa cum este de exemplu la distribuțiile Linux. Windows este o platformă excelentă pentru dezvoltarea pe WordPress, Joomla sau Drupal, toate rulând nativ cu PHP. 

Spre deosebire de Linux, care este gestionat predominant prin linii de comandă, Windows cu IIS (Internet Information Services) activat, permite administrarea prin Remote Desktop (RDP) prin interfețe grafice familiare, ceea ce oferă o administrare și configurare ușoară accesibilă atât utilizatorilor de zi cu zi dar și administratorilor de sistem.

 

Se aplică la Windows 10/11, Windows Server.