Dacă cauți o infrastructură web robustă pentru aplicații critice, stack-ul LEMP (Linux + Nginx + MySQL + PHP) pe CentOS 8 este soluția enterprise de top. În acest ghid, vei configura o platformă optimizată pentru performanță și securitate în doar 15 minute.
Cerințe Preliminare
-
Server CentOS 8
-
Utilizator cu privilegii
sudo
-
Acces SSH sau consolă locală
Pasul 1: Instalare Nginx
-
Actualizează DNF:
sudo dnf update
-
Instalează Nginx:
sudo dnf install nginx
-
Pornește și activează:
sudo systemctl start nginx sudo systemctl enable nginx
-
Deschide porturi:
sudo firewall-cmd --permanent --add-service={http,https} sudo firewall-cmd --reload
Pasul 2: Instalare MySQL 8.0
-
Instalează server MySQL:
sudo dnf install mysql-server
-
Pornește și activează:
sudo systemctl start mysqld sudo systemctl enable mysqld
-
Rulare securizare:
sudo mysql_secure_installation
Răspunsuri recomandate:
-
Nivel parolă: 2 (Strong)
-
Dezactivează login remote: y
-
Șterge utilizator anonim: y
-
Dezactivează test DB: y
Pasul 3: Instalare PHP 7.4
-
Activează repository EPEL:
sudo dnf install epel-release
-
Activează Remi Repository:
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
-
Instalează PHP cu module:
sudo dnf module reset php sudo dnf module enable php:remi-7.4 sudo dnf install php php-fpm php-mysqlnd php-opcache php-gd php-xml php-mbstring
Pasul 4: Configurare Integrare Nginx + PHP
-
Editează fișier config Nginx:
sudo nano /etc/nginx/conf.d/php-site.conf
server { listen 80; server_name server_domeniu.ro; root /var/www/html; location / { index index.php index.html; } location ~ \.php$ { fastcgi_pass unix:/run/php-fpm/www.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
-
Verifică sintaxă:
sudo nginx -t
-
Repornește servicii:
sudo systemctl restart nginx php-fpm
Pasul 5: Testare PHP
-
Creează fișier test:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
-
Accesează în browser:
http://IP_server/info.php
???? Verifică:
-
Sectiunea "Server API": FPM/FastCGI
-
Extensia mysqlnd activă
Bonus: Hardening Enterprise
1. Protecție PHP-FPM
Editează /etc/php-fpm.d/www.conf
:
user = nginx group = nginx listen.owner = nginx listen.group = nginx security.limit_extensions = .php .php7 .php74
2. Securizare MySQL
Crează utilizator dedicat:
CREATE USER 'aplicatie_user'@'localhost' IDENTIFIED BY 'P@ssw0rd!Complex'; GRANT SELECT, INSERT, UPDATE ON baza_date.* TO 'aplicatie_user'@'localhost';
Optimizări Avansate
-
OPcache Turbo:
sudo nano /etc/php.d/10-opcache.ini
opcache.enable=1 opcache.memory_consumption=256
-
Compresie Gzip în Nginx:
Adaugă în/etc/nginx/nginx.conf
:
gzip on; gzip_types text/plain application/xml image/svg+xml;
Depanare Rapidă
-
Eroare 502 Bad Gateway:
sudo chown -R nginx:nginx /run/php-fpm
-
PHP nu procesează: Verifică
fastcgi_pass
corespunde culs /run/php-fpm/
-
MySQL remote access:
Editează/etc/my.cnf.d/mysql-server.cnf
și seteazăbind-address=0.0.0.0
De ce CentOS 8 + LEMP?
Avantaje enterprise:
Suport pe termen lung până în 2029
Integrare nativă SELinux pentru protecție maximă
Performanță optimizată pentru sarcini critice
Statistică de securitate:
Serverele CentOS au 87% mai puține vulnerabilități decât Ubuntu!