Systemd este managerul de servicii și inițializare standard pe toate distribuțiile Linux majore: Ubuntu, Debian,…

Ghid pentru configurarea PHP pe server: versiuni, module și php.ini
De ce contează configurarea PHP. Ghid pentru configurarea PHP pe server: versiuni, module și php.ini.
PHP este limbajul de programare care alimentează peste 75% din site-urile web, inclusiv WordPress, Joomla, Drupal și aplicațiile dezvoltate cu Laravel sau Symfony. Configurarea corectă a PHP pe server influențează direct performanța, securitatea și stabilitatea aplicațiilor tale web.
Acest ghid acoperă tot ce trebuie să știi despre gestionarea PHP pe un server Linux.
Ghid pentru configurarea PHP pe server: versiuni, module și php.ini
Alegerea versiunii PHP potrivite este primul pas important:
Versiuni active și suportate
- PHP 8.3 – versiunea stabilă actuală, performanță excelentă, funcționalități moderne
- PHP 8.2 – încă suportată cu actualizări de securitate, alegere sigură pentru producție
- PHP 8.1 – suport activ în scădere, planifică actualizarea
Versiuni depreciate (nu le folosi)
- PHP 7.4 – nu mai primește actualizări de securitate din noiembrie 2022
- PHP 5.x – extrem de vechi, vulnerabilități grave de securitate
Trecerea de la PHP 7.4 la PHP 8.2 poate aduce o îmbunătățire de performanță de 15-25% fără nicio altă modificare.
Instalarea mai multor versiuni PHP
Pe un server VPS, poți instala mai multe versiuni PHP simultan pentru a suporta aplicații cu cerințe diferite.
Pe AlmaLinux/Rocky Linux cu Remi Repository
- Adaugă repository-ul Remi:
dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm - Instalează PHP 8.2:
dnf module install php:remi-8.2 - Pentru versiuni multiple, folosește prefixul:
dnf install php82-php-fpm php83-php-fpm
Pe Ubuntu/Debian cu PPA Ondrej
- Adaugă repository-ul:
add-apt-repository ppa:ondrej/php - Instalează versiunea dorită:
apt install php8.2-fpm php8.3-fpm - Fiecare versiune va rula ca serviciu separat
Module PHP esențiale
PHP funcționează cu module (extensii) care adaugă funcționalități specifice. Iată modulele esențiale pentru hosting web:
Module obligatorii
mysqli/pdo_mysql– conectivitate cu baze de date MySQL/MariaDBcurl– cereri HTTP externe, esențial pentru API-uri și actualizărimbstring– suport pentru caractere multibyte (UTF-8, diacritice)xml– procesare XML, necesar pentru feed-uri RSS și SOAPgdsauimagick– procesare imagini (redimensionare, thumbnail-uri)zip– compresie și decompresie arhive ZIPjson– inclus implicit din PHP 8.0
Module recomandate
opcache– cache pentru bytecode PHP compilat, îmbunătățire majoră de performanțăintl– internaționalizare, important pentru site-uri multilingvebcmath– calcule matematice de precizie, necesar pentru e-commercesoap– integrare cu servicii web SOAPredissaumemcached– cache în memorie pentru sesiuni și obiecte
Verifică modulele instalate cu comanda: php -m
Configurarea php.ini – setări esențiale
Fișierul php.ini controlează comportamentul PHP. Localizează-l cu: php --ini
Setări de memorie și execuție
memory_limit = 256M– limita de memorie per script (256 MB este un standard bun)max_execution_time = 300– timpul maxim de execuție în secundemax_input_time = 300– timpul maxim pentru parsarea datelor de intraremax_input_vars = 5000– numărul maxim de variabile de intrare
Setări de upload
upload_max_filesize = 64M– dimensiunea maximă a unui fișier încărcatpost_max_size = 128M– dimensiunea maximă a datelor POST (trebuie mai mare decât upload_max_filesize)file_uploads = On– permite încărcarea fișierelor
Setări de securitate
expose_php = Off– ascunde versiunea PHP din headerele HTTPdisplay_errors = Off– nu afișa erorile pe ecran în producțielog_errors = On– înregistrează erorile în fișierul de logerror_log = /var/log/php/error.log– calea către fișierul de logsession.cookie_httponly = 1– protejează cookie-urile de sesiunesession.cookie_secure = 1– cookie-urile se trimit doar pe HTTPSallow_url_fopen = Off– dezactivează dacă nu este necesar, reduce riscurile de securitate
OPcache – cache-ul esențial pentru performanță
OPcache este modulul care transformă codul PHP în bytecode compilat și îl stochează în memorie. Fără el, PHP recompilează fiecare fișier la fiecare cerere.
Configurare OPcache optimă
opcache.enable = 1opcache.memory_consumption = 128– memorie alocată în MBopcache.interned_strings_buffer = 16opcache.max_accelerated_files = 10000– numărul maxim de fișiere în cacheopcache.revalidate_freq = 60– verifică modificările la fiecare 60 de secundeopcache.validate_timestamps = 1– verifică dacă fișierele s-au modificat
Cu OPcache configurat corect, poți obține îmbunătățiri de performanță de 2-3 ori pentru aplicații PHP.
PHP-FPM: configurare pentru performanță
PHP-FPM (FastCGI Process Manager) este metoda recomandată de rulare PHP cu Nginx și o alternativă mai bună decât mod_php pentru Apache:
pm = dynamic– gestionare dinamică a proceselorpm.max_children = 20– numărul maxim de procese workerpm.start_servers = 5– procese pornite la startpm.min_spare_servers = 3– procese minime în așteptarepm.max_spare_servers = 10– procese maxime în așteptare
Valorile depind de RAM-ul disponibil. O regulă de bază: fiecare proces PHP-FPM consumă 20-40 MB RAM.
Verificare și diagnosticare
Comenzi utile pentru verificarea configurației PHP:
php -v– afișează versiunea PHPphp -m– listează modulele instalatephp -i– afișează toată configurația (echivalent phpinfo())php --ini– arată locația fișierelor de configurarephp -r "echo ini_get('memory_limit');"– verifică o setare specifică
Consultă celelalte ghiduri din blogul nostru pentru mai multe detalii despre optimizarea serverelor.
Configurarea corectă a PHP este esențială pentru performanța și securitatea oricărui site web. De la alegerea versiunii potrivite la optimizarea OPcache și PHP-FPM, fiecare setare contează. Nu te baza pe configurarea implicită – ajusteaz-o în funcție de cerințele aplicațiilor tale. Dacă ai nevoie de ajutor cu configurarea PHP pe serverul tău, echipa noastră de suport este disponibilă.


