Instalarea și configurarea php nginx sub ferestre - site-ul oficial al echipei easycoding

Din acest HOWTO veți învăța cum să instalați și să configurați pachetul nginx + php (în modul FastCGI) + MySQL DBMS pentru a funcționa sub sistemul de operare Microsoft Windows.

Vom examina mai îndeaproape instalarea, configurația de bază și avansată și securitatea.

Articolul conține exemple de scripturi de pornire și de închidere, precum și exemple de fișiere de configurare nginx și php.

Vedeți detaliile sub tăiere.

Pasul 1. Pregătirea pentru instalare

Prin plasarea tuturor componentelor în acest fel, veți face pachetul portabil (portabil) și gata de a lucra de pe orice computer.

Pasul 2: Descărcați componentele necesare

Avem nevoie de următoarele componente:

Pasul 3: Instalați componentele

După terminarea descărcării, continuați să instalați componentele în conformitate cu acest algoritm:

  1. dezarhivați arhiva de la nginx la directorul creat în pasul 1 din rădăcină (de exemplu, c: \ nginx \). În continuare, în acest HOWTO acest director va fi folosit, deci dacă ați schimbat calea, faceți modificările corespunzătoare;
  2. instalați PHP în directorul c: \ nginx \ php \.
    1. în etapa de alegere a tipului de instalare (Web Server Setup), selectați opțiunea "Other CGI", altfel modulele necesare pentru rularea PHP în modul FastCGI nu vor fi instalate;
    Instalarea și configurarea php nginx sub ferestre - site-ul oficial al echipei easycoding
    PHP - Configurare Server Web
  3. În etapa de selectare a modulelor necesare (Selectați elementele de instalat), asigurați-vă că selectați MySQL. MySQLi și OpenSSL (dacă doriți să configurați ulterior SSL). De asemenea, se recomandă selectarea modulelor necesare pentru majoritatea CMS: bzip2, Curl, Exif, GD2, Gettext, XML. Dacă uitați ceva și aveți nevoie de el, puteți oricând să instalați / dezinstalați aceste componente executând din nou programul de instalare PHP și selectând Modificare.
    Instalarea și configurarea php nginx sub ferestre - site-ul oficial al echipei easycoding
    PHP - Selectarea componentelor
  • instalați DBMS-ul MySQL în directorul c: \ nginx \ mysql \. Nu este nimic complicat. În expertul de configurare, selectați configurația implicită și asigurați-vă că ați setat parola de administrator (parola contului rădăcină încorporată);
  • Dezarhivați arhiva RunHiddenConsole.zip în directorul c: \ nginx \.
  • Pasul 4. Crearea de script-uri de pornire și oprire

    Pentru a lansa rapid setul, trebuie să creați următorul fișier în directorul c: \ nginx \ 3: start.cmd. shutdown.cmd și restart.cmd. concepute pentru a porni, opri și reporni serverele, respectiv.

    Afișarea fișierului start.cmd (pornirea serverului):

    Afișarea fișierului shutdown.cmd (oprirea serverului):

    Afișați fișierul restart.cmd (reporniți serverul):

    Dacă ați modificat calea de la standardul C: \ nginx \. pe altceva, efectuați modificările corespunzătoare ale scenariilor.

    Dacă doriți să rulați serverul Nginx + PHP + MySQL la pornire, apoi adăugați lucrarea la scriptul autorun start.cmd utilizând Windows sarcinile programate într-o clipă.

    Pasul 5: Configurați nginx

    1. Schimbați linia:

    Aici, în loc de 1, specificați numărul de fluxuri de lucru nginx. Se recomandă să specificați un număr egal cu numărul de nuclee de procesor.

    Aceasta va permite includerea unui jurnal de erori în fișierul error.log. pe care îl veți găsi întotdeauna în directorul c: \ ngang \ logs \.

    3. Modificați valoarea directivei serverului<> pentru nginx fără a utiliza SSL:

    Dacă doriți să utilizați SSL, veți avea nevoie de o configurație complet diferită:

    Aici, C: /nginx/private/ssl_cert_domain.pem - certificatul SSL fișier și C: /nginx/private/ssl_cert_domain.key - cheia privată pentru el. Atenție vă rog! Când porniți serverul va cere parola pentru a decripta cheia privată, astfel încât, în scopul de a nu introduce tot timpul, în timpul creării (obținere) a certificatului, lăsați necompletat câmpul pentru parolă (este cu siguranță, nu în condiții de siguranță, dar se economisește timp în timpul pornirii serverului). În noile versiuni, poate apărea funcția de specificare a parolei în config (ca Apache).

    Puteți înlocui, de asemenea, paginile de eroare 404, 500, 502, 503, 504 și 403 prin specificarea codului de eroare Directiva error_page și numele fișierului care va fi afișat atunci când apare.

    Pasul 6. Configurați php și securitatea

    De asemenea, căutați o linie în fișier

    și înlocuiți-l cu următoarele:

    Aceste acțiuni includ un mod sigur pentru PHP (Safe Mode), care previne cele mai nesigure funcții și execută fișiere și dezactivează o serie de funcții potențial vulnerabile. Atenție vă rog! Dacă CMS nu funcționează atunci când este activat modul PHP Safe, dezactivați-l sau puneți CMS corect ;-).

    Dacă sunteți dezvoltator și doriți să vedeți erori și mesaje PHP, găsiți linia

    și înlocuiți-l cu

    Pentru a remedia o vulnerabilitate periculoasă în PHP care vă permite să executați cod PHP din fișierele descărcate, găsiți linia din php.ini

    Setările suplimentare ale fișierelor nu trebuie modificate - totul a fost deja optimizat pentru majoritatea aplicațiilor de către programul de instalare PHP.

    Pasul 7: Procesați mai multe fișiere PHP simultan

    Din păcate, PHP în Windows nu știe cum să creeze copii ale instanțelor sale, deci va trebui să rulați mai multe copii în avans și să descrieți utilizarea acestora în fișierul config nginx.

    În fișierul start.cmd, scrieți lansarea php-cgi.exe pe diferite numere de porturi:

    Executați cât mai multe procese de care aveți nevoie (de obicei 5-20). În exemplul nostru, se utilizează 5 instanțe cu numere de port 9000 - 9004.

    Acum, deschideți fișierul fastcgi_params și, la început, scrieți următoarele:

    Asigurați-vă că eliminați rapidcgi_pass 127.0.0.1:9000; în toate directivele locației.

    Un exemplu de fișier de configurare nginx.conf:

    Exemplu de config care utilizează SSL:

    Exemplul fișierului Fastcgi_params:

    Pasul 8. Testarea și concluzia

    Pasul 9. Exemple gata de fișiere de configurare

    Prin cererea populară, am decis să publicăm exemple de fișiere de configurare nginx din depozitul Git. În prezent, există trei configurări diferite:

    • nginx_simple.conf - cea mai simplă configurație pentru lansarea unui site fără suport SSL;
    • nginx_ssl.conf - configurare pentru lansarea unui site cu suport SSL;
    • nginx_vhosts.conf - o configurație special configurată cu căi relative, suport SSL, gazde virtuale (permite păstrarea mai multor site-uri pe același server) și jurnale individuale.

    Acolo veți găsi, de asemenea, scripturi gata pentru pornirea și oprirea serverului, precum și un fișier de configurare PHP.

    Articole similare