Cum se configurează pagina Nginx pentru PHP

În acest articol, am arătat cum să configurați pagina Nginx pentru PHP pe CentOS.

Pentru acest tutorial, am instalat NGINX. Acest tutorial va acoperi configurația de bază a serverului web NGINX pentru a procesa aplicația PHP și a le server pe portul 80. Este recomandat să studiați NGINX și PHP-FPM.

Condiții prealabile

  • Server dedicat sau cloud cu CentOS instalat.
  • NGINX instalat pe CentOS.
  • PHP instalat.
  • SSH ca utilizator root (Puteți utiliza un utilizator normal cu drepturi sudoer, utilizați „sudo” cu fiecare comandă).

Iată articolele pentru instalarea Nginx și instalarea PHP .

Odată ce le instalați, deschideți fișierul principal de configurare PHP-fpm:

# vi /etc/php.ini

Căutăm parametrul care setează cgi.fix_pathinfo . Vom fi necomentați prin eliminarea punctelor și virgulelor (;) și setarea la 0.

Aceasta este o setare extrem de nesigură, deoarece îi spune lui PHP să încerce să execute cel mai apropiat fișier pe care îl poate găsi dacă un fișier PHP nu se potrivește exact. Acest lucru ar permite practic utilizatorilor să creeze cereri PHP într-un mod care le-ar permite să execute scripturi pe care nu ar trebui să li se permită să le execute.

Deci, vom schimba ambele condiții decomentând linia și setând-o la „0” astfel:

cgi.fix_pathinfo=0

După ce ați terminat, salvați și ieșiți.

Apoi, reporniți serviciul php-fpm:

# systemctl restart php-fpm

Configurați blocul de server Nginx pentru a utiliza procesorul PHP

# vi /etc/nginx/sites-available/default

notă: numele fișierului bloc de server poate fi diferit, așa cum se arată mai sus.

Blocul de server implicit al Ngnix ar putea arăta astfel:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.html index.htm;

server_name localhost;

location / {
try_files $uri $uri/ =404;
}
}

  • Aici trebuie să adăugăm o directivă index.php index pentru a permite fișierelor PHP să fie servite atunci când este solicitat un director.
  • Modificați directiva server_name. Înlocuiți localhost cu numele de domeniu FQDN sau adresa IP publică.
  • Adăugați o directivă try_files pentru a vă asigura că Nginx nu transmite cereri rele procesorului nostru PHP.

Blocul serverului arată astfel:

server {
listen 80 default_server;
listen [::]:80 default_server ipv6only=on;

root /usr/share/nginx/html;
index index.php index.html index.htm;

server_name server_domain_name_or_IP;

location / {
try_files $uri $uri/ =404;
}

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}

location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

Configurați ca modificările de mai sus, acum salvați și ieșiți din fișier.

Reporniți Ngnix pentru a face modificările necesare:

# systemctl restart nginx

Acum, creați un fișier de test PHP:

# vi /usr/share/nginx/html/info.php

Adăugați cod PHP valid care returnează informații formatate despre serverul nostru:

<>
phpinfo();
?>

Salvează și ieși.

Gata, am făcut configurația necesară, precum și modificările.

În cele din urmă, să accesăm fișierul info.php, pe care l-am creat mai devreme:

https://server_domain_name_or_IP/info.php

Ar trebui să vedeți o pagină web care a fost generată de PHP cu informații despre serverul dvs.

Dacă vedeți o pagină de informații PHP generată de PHP, ați configurat procesarea PHP cu Nginx cu succes.

Deocamdată, eliminați fișierul tastând:

sudo rm /usr/share/nginx/html/info.php

În acest articol, am văzut cum inginerii noștri de asistență configurează Nginx pentru pagina PHP.


FIX: „Editorul a întâmpinat o eroare neașteptată” în WordPress după actualizare

FIX: „Editorul a întâmpinat o eroare neașteptată” în WordPress după actualizare

Nu puteți scrie o postare nouă folosind noul Editor de blocuri din WordPress? Sunt șanse să obțineți „Editorul

Cum să setați Editorul clasic ca Editor implicit în WordPress în loc de Gutenberg

Cum să setați Editorul clasic ca Editor implicit în WordPress în loc de Gutenberg

Editorul Gutenberg va deveni în curând editorul implicit în WordPress. Veți avea opțiunea de a selecta Editorul clasic

Cum să reîmprospătați elementele folderului în Windows 11

Cum să reîmprospătați elementele folderului în Windows 11

Cu opțiunea Reîmprospătare din meniul contextual lipsește, iată cum puteți reîmprospăta elementele în File Explorer pe Windows 11.

🔧 REPARAȚIE: Instalarea dvs. PHP pare să lipsească extensia MySQL care este cerută de WordPress

🔧 REPARAȚIE: Instalarea dvs. PHP pare să lipsească extensia MySQL care este cerută de WordPress

Doriți să rulați un site WordPress autogestionat? Grozav. Vei învăța un milion de lucruri. Una dintre părțile critice ale setarii

Cum să dezactivați Block Editor și să instalați Classic Editor în WordPress 5.0

Cum să dezactivați Block Editor și să instalați Classic Editor în WordPress 5.0

Începând cu WordPress 5.0, editorul implicit pe WordPress este noul editor Block. Noul editor este radical diferit

Cum să remediați problemele WordPress 5.0

Cum să remediați problemele WordPress 5.0

WordPress 5.0 se lansează în sfârșit și aduce cu sine o nouă experiență de editare cu Gutenberg

Cum să remediați eroarea de colare „utf8mb4_0900_ai_ci” la importul bazei de date WordPress

Cum să remediați eroarea de colare „utf8mb4_0900_ai_ci” la importul bazei de date WordPress

Dacă comutați instalarea WordPress de la un server MySQL 8 la MySQL 5.7 (sau mai jos), cel mai probabil veți întâlni

Cum să activați etichetele scurte PHP

Cum să activați etichetele scurte PHP

În acest articol, am prezentat cum să activați etichetele scurte PHP. PHP analizează fișierul folosind deschiderea și închiderea etichetelor, care arată. Pentru a activa etichetele scurte PHP

Configurați mod_evasive pentru a preveni atacul DoS și DDoS pe CentOS

Configurați mod_evasive pentru a preveni atacul DoS și DDoS pe CentOS

În acest articol, vom învăța cum să instalați și să configurați mod_evasive pentru a preveni atacul DoS și DDoS pe CentOS. Modulul Apache mod_evasiv.

Cum se instalează PHP cu PHP-FPM pentru NGINX pe CentOS

Cum se instalează PHP cu PHP-FPM pentru NGINX pe CentOS

cum se instalează PHP cu PHP-FPM pentru NGINX pe CentOS. Configurația de bază a serverului web NGINX pentru a procesa aplicația PHP și a le server pe portul 80.