Ghid Instalare PHP și PHP-FPM pe Linux – Integrare cu NGINX și Apache

Tutoriale Linux
Avatar utilizator
CryWolf
Sys Admin
Sys Admin
Mesaje: 474
Membru din: Mar Dec 15, 2009 11:32 am
Detinator Steam: Da
Cunostinte CS: Excelente
Reputatie: Detinator
Webmaster
Scripter
Trance Fan
Localitate: Botosani

Ghid Instalare PHP și PHP-FPM pe Linux – Integrare cu NGINX și Apache

Mesaj de CryWolf »

Meta Title: Instalare PHP și PHP-FPM pe Ubuntu/Debian – Integrare cu NGINX și Apache
Meta Description: Învață cum să instalezi PHP și PHP-FPM și să le integrezi corect cu serverele web NGINX și Apache. Tutorial Linux simplificat pentru începători.


Ce este PHP și PHP-FPM?
  • PHP: Limbaj de programare pentru pagini web dinamice (ex: WordPress, Laravel)
    PHP-FPM: FastCGI Process Manager – o metodă eficientă de rulare a PHP-ului, folosită de obicei cu NGINX.
Instalare PHP și PHP-FPM pe Ubuntu/Debian
Cod PHP:sudo apt update && sudo apt upgrade -y sudo apt install php php-fpm php-cli php-mysql php-curl php-xml php-mbstring -y php -v

Integrare PHP cu Apache
Activează modulul proxy_fcgi
Cod PHP:sudo a2enmod proxy_fcgi setenvif sudo a2enconf php8.1-fpm # schimbă versiunea după caz sudo systemctl reload apache2
Verifică că FPM funcționează:
Cod PHP:systemctl status php8.1-fpm
Creează un fișier PHP de test
Cod PHP:echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
Accesează în browser:
http://<adresa-ip>/info.php
Integrare PHP-FPM cu NGINX
NGINX nu suportă PHP direct – are nevoie de PHP-FPM.

Creează un fișier .php de test
Cod PHP:sudo mkdir -p /var/www/site-nginx echo "<?php phpinfo(); ?>" | sudo tee /var/www/site-nginx/info.php
Creează un config NGINX
Cod PHP:sudo nano /etc/nginx/sites-available/site-nginx
Exemplu config NGINX:
Cod PHP:server { listen 80; server_name domeniu.tld; root /var/www/site-nginx; index index.php index.html; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.sock; # schimbă versiunea dacă e nevoie } location ~ /\.ht { deny all; } }
Activează site-ul și repornește NGINX
Cod PHP:sudo ln -s /etc/nginx/sites-available/site-nginx /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl reload nginx
Accesează:
Cod PHP:http://<adresa-ip>/info.php
In general asta poate fi si:
Cod PHP: http://localhost/info.php
SAU
Cod PHP:http://127.0.0.1/info.php
Info: NU IMI DATI PM PENTRU CERERI AJUTOR ETC (NU RASPUND) FOLOSITI FORUMUL.
Imagine

Imagine
CUM SA NU LUPTI PENTRU IUBIRE ????
Daca lupti,inseamna ca vrei sa castigi ceva.Iubirea nu-i o miza.