Fii propria ta gazdă sau instalează Apache pe platforma Windows. Apache - instalare și configurare

Instalarea unui server web pe Linux:

  • Dacă aveți Ubuntu, atunci articolul „Cum se instalează serverul web Apache cu PHP 7, MariaDB/MySQL și phpMyAdmin (LAMP) pe Ubuntu 16.10” este potrivit pentru dvs.
  • Dacă aveți Arch Linux, atunci articolul „Instalarea LAMP (Linux, Apache, MySQL/MariaDB, PHP7 și phpMyAdmin) pe Arch Linux / BlackArch” este potrivit pentru dvs.

Serverul local este un instrument foarte util. Va fi cu siguranță util pentru webmasteri, programatori PHP și testeri de penetrare. Toate programele incluse într-o instalare tipică de server web sunt gratuite și open source. Un server web local consumă resurse minime și de fapt nu este dificil de instalat și configurat.

Această instrucțiune vă va spune cum să instalați un server web local fără a utiliza ansambluri gata făcute. Această metodă are avantajele ei. Cele mai importante dintre ele sunt: ​​control complet asupra a ceea ce instalați; capacitatea de a utiliza cele mai recente versiuni de software.

Dacă urmați întocmai instrucțiunile, atunci totul va funcționa cu siguranță pentru dvs.! Cu excepția celor care au Windows XP - dacă aveți acest sistem de operare, atunci s-au făcut instrucțiuni speciale pentru dvs.

Voi arăta un exemplu de instalare pe Windows 10, dar dacă aveți o versiune diferită de Windows, atunci nu lăsați acest lucru să vă deranjeze - procedura este identică peste tot. Voi descărca cele mai recente (cele mai recente) versiuni ale programelor în momentul scrierii. Dacă până când citiți, vor fi lansate versiuni noi, atunci descărcați-le.

Etape de instalare:

De asemenea, s-ar putea să vă fie util:

1. Pregătire (descărcarea programelor incluse în server, crearea structurii serverului)

Avem nevoie:

  • Apache(direct server web)
  • PHP– mediu pentru rularea programelor PHP (necesar de aproape toate site-urile web)
  • MySQL– sistem de gestionare a bazelor de date (necesar de majoritatea site-urilor web)
  • phpMyAdmin– un instrument foarte convenabil pentru gestionarea bazelor de date

Site-ul oficial al dezvoltatorilor Apache este httpd.apache.org. Puteți descărca Apache de pe acest site. Dar versiunea oficială este construită folosind un compilator vechi, din acest motiv nu funcționează cu versiuni noi de PHP. Autorii PHP recomandă Apache de pe apachelounge.com/download. Prin urmare, pentru această instrucțiune, descarcăm Apache de pe site-ul apachelounge.com/download.

Dacă aveți o versiune de Windows pe 64 de biți, atunci puteți alege atât versiunile pe 64 de biți, cât și cele pe 32 de biți ale componentelor. Regula principală este că toate componentele trebuie să aibă aceeași dimensiune de biți. Dacă aveți o versiune de Windows pe 32 de biți, atunci toate componentele trebuie să fie pe 32 de biți. Acest lucru nu se aplică pentru phpMyAdmin, care este scris în PHP. Pentru programele PHP, conceptul de adâncime de biți nu este aplicabil.

Versiunea gratuită de MySQL se numește MySQL Community Server. Poate fi descărcat de pe pagină. Există un program de instalare executabil pe aceeași pagină, dar recomand să descărcați arhiva ZIP. Pe pagina de descărcare ni se cere să ne înregistrăm sau să ne logăm la un cont existent - dar acest lucru nu este necesar. Doar faceți clic pe linkul " Nu, mulțumesc, doar începe descărcarea mea" Atenție la adâncimea de biți.

Avem nevoie și de fișierul C++ Redistributable Visual Studio 2017, adică. Componentă redistribuibilă Visual C++ pentru Visual Studio 2017 (sau orice altă versiune ulterioară), o puteți descărca de pe site-ul oficial Microsoft folosind linkul (link direct pentru a descărca versiunea pe 64 de biți; link direct pentru a descărca versiunea pe 32 de biți). Acest fișier este necesar pentru serverul web. Și MySQL necesită pachete redistribuibile Visual C++ pentru Visual Studio 2015. Poate fi descărcat de pe .

Deci, am descărcat următoarele fișiere:

  • httpd-2.4.29-Win64-VC15.zip
  • php-7.2.0-Win32-VC15-x64.zip
  • mysql-8.0.11-winx64.zip
  • phpMyAdmin-4.7.6-all-languages.zip
  • vc_redist.x64.exe
  • vcredist_x64.exe

Instalați fișiere vc_redist.x64.exeȘi vcredist_x64.exe.

2. Creați o structură de server web

Să creăm structura de directoare a serverului nostru. Ideea principală este de a separa fișierele executabile și fișierele site-ului web cu baze de date. Acest lucru este convenabil pentru întreținerea serverului, inclusiv pentru copiile de rezervă.

La rădăcina discului C:\ creați un director Server. În acest director, creați 2 subdirectoare: cos(pentru fișiere executabile) și date.

Accesați directorul dateși creați acolo subdosare D.B.(pentru baze de date) și htdocs(pentru site-uri web).

Accesați directorul C:\Server\date\DB\și creați acolo un folder gol date.

3. Instalarea Apache 2.4

Conținutul arhivei descărcate (mai precis, doar directorul Apache24), despachetează în C:\Server\bin\.

Accesați directorul c:\Server\bin\Apache24\conf\și deschideți fișierul httpd.conf orice editor de text.

În ea trebuie să înlocuim un număr de linii.

Definiți SRVROOT „c:/Apache24”

Definiți SRVROOT „c:/Server/bin/Apache24”

#ServerName www.example.com:80

ServerName gazdă locală

DocumentRoot „$(SRVROOT)/htdocs”

DocumentRoot „c:/Server/data/htdocs/”

DirectoryIndex index.html

DirectoryIndex index.php index.html index.htm

# AllowOverride controlează ce directive pot fi plasate în fișierele .htaccess. # Poate fi „Toate”, „Niciuna” sau orice combinație de cuvinte cheie: # AllowOverride FileInfo AuthConfig Limit # AllowOverride None

# AllowOverride controlează ce directive pot fi plasate în fișierele .htaccess. # Poate fi „Toate”, „Niciuna” sau orice combinație de cuvinte cheie: # AllowOverride FileInfo AuthConfig Limit # AllowOverride All

#LoadModule rewrite_module modules/mod_rewrite.so

LoadModule rewrite_module modules/mod_rewrite.so

Salvați și închideți fișierul. Gata, configurarea Apache este completă! O descriere a fiecărei directive modificate poate fi găsită pe această pagină.

Deschideți linia de comandă (acest lucru se poate face apăsând simultan tastele Win+X). Selectați Windows PowerShell (Administrator) acolo și copiați acolo:

C:\Server\bin\Apache24\bin\httpd.exe -k install

Dacă se primește o solicitare de la firewall-ul pentru Apache, faceți clic pe Permite.

Acum intrați în linia de comandă:

C:\Server\bin\Apache24\bin\httpd.exe -k start

Și apăsați Enter.

Introduceți root ca nume de utilizator. Lăsați câmpul pentru parolă necompletat. Dacă totul este făcut corect, atunci totul ar trebui să arate astfel:

7. Utilizarea serverului și copierea de rezervă a datelor

În catalog c:\Server\date\htdocs\ creați foldere și fișiere, de exemplu:

c:\Server\data\htdocs\test\ajax.php - acest fișier, în consecință, va fi disponibil la http://localhost/test/ajax.php etc.

Pentru a crea o copie de rezervă completă a tuturor site-urilor și bazelor de date, doar copiați directorul C:\Server\date\.

Înainte de a actualiza modulele, faceți o copie de rezervă a folderului cos- în caz de probleme, puteți reveni cu ușurință la versiunile anterioare.

Când reinstalați serverul sau îl actualizați, trebuie să re-configurați fișierele de configurare. Dacă aveți copii ale acestor fișiere, procesul poate fi accelerat semnificativ. Este recomandabil să faceți backup pentru următoarele fișiere:

  • c:\Server\bin\Apache24\conf\httpd.conf
  • c:\Server\bin\mysql-8.0\my.ini
  • c:\Server\bin\PHP\php.ini
  • c:\Server\date\htdocs\phpMyAdmin\config.inc.php

Toate setările sunt stocate în ele.

8. Configurare PHP suplimentară

PHP este acum un instrument foarte puternic, flexibil și ușor de utilizat. Pe un computer local, îl puteți folosi pentru a rezolva o varietate de sarcini care nu sunt neapărat legate de generarea de pagini Web. Când rezolvați probleme extraordinare, puteți întâlni restricții stabilite în setări. Aceste setări sunt conținute în fișierul php.ini (c:\Server\bin\PHP\php.ini). Să ne uităm la unele dintre ele:

Memory_limit = 128M

setează cantitatea maximă de memorie pe care o poate folosi un script

Post_max_size = 8M

setează cantitatea maximă de date care va fi acceptată la trimiterea folosind metoda POST

;default_charset = "UTF-8"

setează codificarea (în mod implicit, linia este comentată)

Upload_max_filesize = 2M

dimensiunea maximă a unui fișier încărcat pe server. Mărimea este setată inițial la o dimensiune foarte mică - doar doi megaocteți. De exemplu, când încărcați o bază de date în phpMyAdmin, nu veți putea încărca un fișier mai mare de 2 megaocteți până când acest element de setare este modificat.

Max_file_uploads = 20

numărul maxim de fișiere de încărcat simultan

Timp_de_execuție_maxim = 30

timpul maxim de execuție pentru un script

Modificarea acestor setări este complet opțională, dar este util să știți despre ele.

9. Setări suplimentare pentru phpMyAdmin

Am configurat deja phpMyAdmin și pentru majoritatea oamenilor funcționalitatea de bază este suficientă. Cu toate acestea, pe pagina de pornire a phpMyAdmin există un mesaj: „Funcțiile suplimentare ale phpMyAdmin nu sunt complet configurate, unele funcții au fost dezactivate.”

Caracteristicile noi sunt:

  • arătarea relațiilor dintre tabele (înrudite);
  • adăugarea de informații despre tabele (începând cu versiunea 2.3.0 puteți descrie într-un tabel special „table_info” care coloană va fi afișată în sfatul cu instrumente când mutați cursorul peste cheia asociată);
  • crearea unei diagrame PDF (începând cu versiunea 2.3.0 poți crea pagini PDF în phpMyAdmin care să arate relațiile dintre tabelele tale);
  • afișați comentariile coloanei (începând cu versiunea 2.3.0 puteți face un comentariu care să descrie fiecare coloană pentru fiecare tabel. Și acestea vor fi vizibile în „previzualizarea tipăririi”. Începând cu versiunea 2.5.0, comentariile sunt folosite pe paginile proprii ale tabelelor și în vizualizarea modului, care apare ca sfaturi cu instrumente deasupra coloanelor (tabele cu proprietăți) sau încorporate în antetul tabelului în modul vizualizare. Pot fi afișate și în dump-ul tabelului);
  • creați marcaje (începând cu versiunea 2.2.0, phpMyAdmin permite utilizatorilor să marcheze interogări. Acest lucru poate fi util pentru interogările utilizate frecvent);
  • istoricul interogărilor SQL (începând cu versiunea 2.5.0 vă puteți salva istoricul tuturor interogărilor SQL care au fost făcute prin interfața phpMyAdmin);
  • designer (începând cu versiunea 2.10.0, instrumentul Designer este disponibil; vă permite să gestionați vizual relațiile dintre tabele);
  • informații despre tabelele utilizate recent;
  • personalizarea interfeței tabelelor utilizate frecvent;
  • urmărire (începând cu versiunea 3.3.x, este disponibil un mecanism de urmărire. Vă ajută să urmăriți fiecare comandă SQL care a fost executată de phpMyAdmin. Înregistrarea manipulării datelor și înregistrarea comenzilor este acceptată. Odată activată, veți putea versiunea tabelelor);
  • setări utilizator (începând cu versiunea 3.4.x, phpMyAdmin permite utilizatorilor să seteze majoritatea setărilor și să le salveze în baza de date);
  • meniuri personalizate (începând cu versiunea 4.1.0 puteți crea grupuri de utilizatori care vor avea acces doar la elementele de meniu alocate. Un utilizator poate fi alocat unui grup și va vedea doar elementele de meniu disponibile pentru grupul său);
  • ascunde/afișează elemente de navigare (începând cu versiunea 4.1.0 poți ascunde/afișa elemente în arborele de navigare).
  • si altii

Acum vom configura complet aceste caracteristici suplimentare. Accesați linkul http://localhost/phpmyadmin/chk_rel.php și faceți clic pe „Creați baza de date”. După aceasta, toate funcțiile noi vor fi activate.

Câteva capturi de ecran ale noilor funcții:

1) Designer

2) Urmărire

10. Instalarea unui dop de e-mail

În directorul C:\Server\bin\, creați un nou director numit Sendmail. Acum, în acest director, creați un fișier sendmail.php cu următorul conținut:

#!/usr/bin/env php

Deschideți fișierul de configurare PHP, acesta se află aici C:\Server\bin\PHP\php.ini. Și adăugați o linie acolo:

Sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"

Salvați fișierul și reporniți serverul. Grozav, acum toate e-mailurile trimise vor fi salvate în director C:\Server\bin\Sendmail\emails\

Scrisorile vor avea extensia .emlși pot fi deschise, de exemplu, de către program Thunderbird. Sau un editor de text obișnuit.

11. Adăugarea unui director PHP la PATH pe Windows

Dacă acest lucru nu se face, pot apărea probleme cu unele module PHP, inclusiv php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll și php_pgsql.dll. Cel puțin, de fiecare dată când serverul pornește, în jurnale apar următoarele:

Avertisment PHP: Pornirea PHP: Nu se poate încărca biblioteca dinamică „C:\\Server\\bin\\PHP\\ext\\php_curl.dll” - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\ xbf\xbd\xef\xbf\xbd.\r\n în Necunoscut pe linia 0 PHP Avertisment: Pornire PHP: Nu se poate încărca biblioteca dinamică „C:\\Server\\bin\\PHP\\ext\\php_intl.dll " - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n în Unknown on line 0 PHP Warning: PHP Startup: Imposibil de încărcat biblioteca dinamică " C:\\Server\\bin\\PHP\\ext\\php_ldap.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r \n în Necunoscut pe linia 0 PHP Avertisment: Pornire PHP: Nu se poate încărca biblioteca dinamică „C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll” - \xef\xbf\xbd\xef\xbf \xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n în Necunoscut pe linia 0 PHP Avertisment: Pornire PHP: Nu se poate încărca biblioteca dinamică „C:\\Server\\bin\\PHP\ \ext\\php_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n în Necunoscut pe linia 0

Pentru a evita aceste avertismente, trebuie să adăugați calea către PHP la variabilele de mediu ale sistemului.

Faceți clic pe butonul Start (sau cum se numește pe Windows 10?), începeți să tastați „ Modificarea variabilelor de mediu ale sistemului» și deschideți fereastra de setări corespunzătoare.

Acolo faceți clic pe " variabile de mediu»:

La fereastră " Variabile de sistem» găsiți și faceți clic pe cale, apoi apasa " Schimbare»:

Mutați intrarea în partea de sus:

Închideți toate ferestrele și salvați modificările.

Reporniți serverul.

12. Înghețare, trafic lent și/sau eroare de server Asincron AcceptEx a eșuat

Dacă serverul dvs. se blochează chiar și fără încărcare - nu afișează pagini web până la repornire, iar în jurnalele serverului există erori Asynchronous AcceptEx failed:

AH00455: Apache/2.4.9 (Win64) PHP/5.5.13 configurat -- reluarea operațiunilor normale AH00456: Apache Lounge VC11 Server construit: 16 mar 2014 12:42:59 AH00094: Linia de comandă: "c:\\Server\\ bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24" AH00418: Părinte: Procesul copil creat 4952 AH00354: Copil: Pornește 64 fire de lucru. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat. (OS 64)Numele de rețea specificat nu mai este disponibil. : AH00341: winnt_accept: AcceptEx asincron a eșuat.

Apoi adăugați la fișierul de configurare Apache:

AcceptFilter http nici unul AcceptFilter https nici unul EnableSendfile dezactivat EnableMMAP dezactivat

13. Configurarea cURL în serverul web Apache pe Windows

Dacă nu știți ce este cURL, atunci nu aveți nevoie de el. Acestea. Simțiți-vă liber să săriți peste acest pas.

cURL este un utilitar de consolă care vă permite să faceți schimb de date cu servere la distanță folosind un număr foarte mare de protocoale. cURL poate folosi cookie-uri și acceptă autentificare. Dacă o aplicație web necesită cURL, atunci aceasta trebuie specificată în dependențe. Multe aplicații populare nu necesită cURL, de exemplu phpMyAdmin și WordPress nu trebuie să configureze cURL.

Dacă cURL nu este configurat corect, veți primi erori:

Eroare fatală: apel la funcția nedefinită curl_multi_init() în...

eroare curl: problemă cu certificatul SSL: nu se poate obține certificatul emitentului local

Pentru a face cURL să funcționeze în Apache pe Windows, aveți nevoie de:

1) Asigurați-vă că adăugați directorul PHP la PATH (variabile de mediu de sistem). Cum se face acest lucru este menționat mai sus:

2) Într-un dosar C:\Server\bin\PHP\php.ini linia ar trebui să fie necomentată extensie=curl

De obicei, acest lucru nu este necesar, dar puteți face o copie de rezervă a fișierelor binare (executabile) ale serverului, dacă doriți. Toate aceste fișiere se află în folder C:\Server\bin\. Acestea sunt Apache, MySQL și PHP - adică. programe care sunt responsabile de funcționarea serverului, dar pe care le putem descărca de pe site-urile oficiale și le putem configura din nou în orice moment.

Dacă doriți să faceți o copie de rezervă a acestora (de exemplu, înainte de a actualiza serverul), atunci opriți serviciile:

C:\Server\bin\Apache24\bin\httpd.exe -k stop net stop mysql

Și copiați folderul într-un loc sigur C:\Server\bin\.

Apropo, puteți copia întregul server, adică pliant C:\Server\– în acest caz, veți obține simultan o copie de rezervă atât a fișierelor executabile, cât și a datelor (baze de date, site-uri web).

Când copierea este finalizată, porniți din nou serviciile:

C:\Server\bin\Apache24\bin\httpd.exe -k start net start mysql

15. Actualizare server

Toate componentele care compun serverul web sunt dezvoltate în mod activ și versiuni noi sunt lansate în mod regulat. Când este lansată o nouă versiune, puteți actualiza o componentă (de exemplu, PHP) sau mai multe simultan.

Ștergerea unui server

Dacă nu mai ai nevoie de server, sau doriți să-l instalați din nou, opriți serviciile și eliminați-le de la pornirea automată executând secvențial pe linia de comandă:

C:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k uninstall net stop mysql c:\Server\bin\mysql-8.0\bin\ mysqld --remove

Ștergeți fișierele serverului; pentru a face acest lucru, ștergeți folderul C:\Server\. Atenție, aceasta va șterge toate bazele de date și site-urile dvs.

Cum să vă protejați serverul web Apache de hacking pe Windows

Cu PHP (cu versiuni alese), cu MySQL și phpMyAdmin. Acest site este găzduit exact pe el: suport tehnic receptiv și calificat, instalare WordPress și alte aplicații web cu un singur clic, cadou la plata pentru un an, transfer gratuit de site. La comanda gazduire + 1 luna gratuita (cod promotional b33e0e2f).

Pregătirea dosarelor

Chiar nu îmi place să am totul în jur, așa că mai întâi să creăm foldere în care vor fi localizate programele și site-urile noastre web.
Creați un folder „Server” pe unitatea „C:\” (sau oriunde vă este mai convenabil):
C:\Server\
Să creăm 2 foldere în el:
C:\Server\web – acesta este folderul în care vom avea programe
C:\Server\domains – iar site-urile noastre web vor fi în acest folder
Deci, în folderul \web\ vom crea 3 foldere pentru apache, php, mysql:
C:\Server\web\apache\
C:\Server\web\php\
C:\Server\web\mysql\
Apoi, accesați folderul domenii și creați folderul \localhost\
C:\Server\domains\localhost\
În interiorul folderului vom avea 2 subdosare: public_html – pentru fișierele site-ului; jurnalele – pentru fișierele text care înregistrează „cine” a accesat site-ul și ce erori au apărut în funcționarea site-ului.
C:\Server\domains\localhost\public_html\
C:\Server\domains\localhost\logs\
Aceasta încheie structura folderului, să trecem la configurarea Apache.

Configurare Apache

Pentru a instala Apache, avem nevoie de Apache însuși (Cap). Deoarece avem Windows 8.1 x64, vom instala Apache x64.
Pentru a descărca, urmați linkul:
www.apachelounge.com/download/win64
și descărcați „httpd-2.4.6-win64.zip”. Avem nevoie și de „Microsoft Visual C++ 2010 Redistributable Package (x64)” pentru funcționarea normală. Pentru a face acest lucru, descărcați-l de pe acest link:
www.microsoft.com/ru-ru/download/details.aspx?id=14632
și instalați.
După ce arhiva noastră a fost descărcată din Apache, să o deschidem. După ce am deschis arhiva, vom vedea folderul „Apache24”, intrați în el. Vor apărea multe foldere și fișiere de program, despachetați totul în folderul pregătit anterior:
C:\Server\web\apache\
Ar trebui să arate așa:
C:\Server\web\apache\bin\
C:\Server\web\apache\cgi-bin\
C:\Server\web\apache\conf\
C:\Server\web\apache\error\
C:\Server\web\apache\htdocs\
C:\Server\web\apache\icons\
C:\Server\web\apache\include\
C:\Server\web\apache\lib\
C:\Server\web\apache\logs\
C:\Server\web\apache\manual\
C:\Server\web\apache\module\
Nu avem nevoie de foldere precum \cgi-bin\, \htdocs\, \icons\ și \manual\ - le puteți șterge.
Să mergem la dosar:
C:\Server\web\apache\conf\
Și deschideți fișierul de configurare Apache – „httpd.conf” cu orice editor de text. În acest fișier, fiecare linie conține directive pentru configurarea Apache, iar liniile care încep cu semnul # (hash) conțin un comentariu și o explicație. Să începem configurarea:

Fișierul de configurare Apache

# Directiva Apache
ServerRoot „C:/Server/web/apache”
# Ascultați pe portul IP local (80 prin standard)
Ascultă 127.0.0.1:80
# în continuare vom include biblioteci de extensii pentru Apache
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php5_module „C:/Server/web/php/php5apache2_4.dll”
# îi spunem lui Apache că fișierele cu extensia php ar trebui tratate ca scripturi php
Aplicația AddHandler/x-httpd-php .php
# specificați locația fișierului de setări php
PHPIniDir „C:/Server/web/php”
# schimba numele serverului
ServerName 127.0.0.1:80
# schimba accesul la director

Opțiunile Include Indexuri FollowSymLinks
AllowOverride All
Permite de la toți


# director cu site-urile noastre
DocumentRoot „C:/Server/domenii”
# fișiere index, după prioritate.

DirectoryIndex index.php index.html index.htm index.shtml

# folder pentru fișierele jurnal
ErrorLog „C:/Server/domains/logs/error.log”
CustomLog „C:/Server/domains/logs/access.log”
# adăugați alias pentru phpMyAdmin și corectați alias pentru cgi

Alias ​​/pma „C:/Server/domains/phpMyAdmin”
ScriptAlias ​​​​/cgi-bin/ „C:/Server/web/apache/cgi-bin/”

# editați calea pentru cgi

AllowOverride Nici unul
Opțiuni Niciuna
Solicitați toate acordate

# tipuri de fisiere


AddType text/html .shtml
AddOutputFilter INCLUDE .shtml
Aplicația AddType/x-httpd-php .php
Aplicație AddType/x-httpd-php-source .phps

# Alte configurații:



BrowserMatch „MSIE 10.0;” bad_DNT


RequestHeader dezactivat DNT env=bad_DNT

Aceasta completează configurarea httpd.conf.
Configurații suplimentare au fost incluse în fișierul de configurare Apache httpd.conf:
Includeți conf/extra/httpd-mpm.conf
Includeți conf/extra/httpd-autoindex.conf
Includeți conf/extra/httpd-vhosts.conf
Includeți conf/extra/httpd-manual.conf
Includeți conf/extra/httpd-default.conf
Să deschidem fișierul „C:\Server\web\apache\conf\extra\httpd-mpm.conf” și să-l parcurgem rapid.
# indicați unde vom stoca fișierul pid:

Fișierul Pid „C:/Server/web/apache/logs/httpd.pid”

Lăsăm neschimbați parametrii rămași. Să deschidem fișierul „httpd-autoindex.conf”, să schimbăm doar liniile cu calea de acolo:
Alias ​​/icoane/ „c:/Server/web/apache/icons/”

Opțiuni Indexuri MultiViews
AllowOverride Nici unul
Solicitați toate acordate

Fișierul Apache Hosts

# folosind domeniul localhost ca exemplu

DocumentRoot „C:/Server/domains/localhost/public_html”
ServerName gazdă locală
ErrorLog „C:/Server/domains/localhost/logs/error.log”
CustomLog „C:/Server/domains/localhost/logs/access.log” comun


# adăugați phpMyAdmin pentru viitor (nu uitați să creați un folder)

DocumentRoot „C:/Server/domains/phpmyadmin/public_html”
ServerName gazdă locală
ErrorLog „C:/Server/domains/phpmyadmin/logs/error.log”
CustomLog „C:/Server/domains/phpmyadmin/logs/access.log” comun

Aceasta se încheie editarea fișierului. În continuare, în fișierele rămase edităm doar căile:
Fișierul „httpd-manual.conf”:
AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "C:/ Server/web/apache/manual$1"

Nu se fac modificări în fișierul „httpd-default.conf”. Aceasta completează configurarea Apache.

Configurare PHP

Deoarece avem Windows 8.1 x64 și Apache x64 instalat și configurat, atunci php ar trebui să fie x64.
Hai sa mergem pe site:

și descărcați arhiva php a celei mai recente versiuni. Avem nevoie de php ca modul, de exemplu. Pentru a face acest lucru, descărcați Thread Safe. După ce arhiva a fost descărcată, deschideți-o și transferați conținutul în folderul „C:\Server\web\php\”. Să creăm două foldere goale „tmp” și „upload”. Apoi, în acest folder, căutați fișierul „php.ini-development” și redenumiți-l în „php.ini”. Deschideți fișierul într-un editor de text și modificați directivele (liniile de comentare din fișier încep cu punct și virgulă).

Configurarea php.ini

short_open_tag = Activat
zlib.output_compression = Activat
dimensiune_max_post = 64M
include_path = ".;C:\Server\web\php\includes"
extension_dir = "C:/Server/web/php/ext"
upload_tmp_dir = "C:/Server/web/php/upload"
upload_max_filesize = 64M
extensie=php_bz2.dll
extensie=php_curl.dll
extensie=php_gd2.dll
extensie=php_mbstring.dll
extensie=php_mysql.dll
extensie=php_mysqli.dll
extensie=php_pdo_mysql.dll
extensie=php_sockets.dll
extensie=php_sqlite3.dll
; în secțiune indicăm fusul orar al serverului nostru (http://php.net/date.timezone)
date.timezone = „Asia/Ekaterinburg”
session.save_path = „De la:/Server/web/php/tmp/”


Aceasta completează configurația php.

Configurarea MySQL

Instalăm MySQL x64 ca socket sub Windows. Descărcați arhiva cu cea mai recentă versiune de MySQL x64:
dev.mysql.com/downloads/mysql
În partea de jos a paginii găsim Windows (x86, 64-bit), ZIP Archive și faceți clic pe butonul „Download”. Veți fi redirecționat către pagina de înregistrare de pe site. Faceți clic în partea de jos a paginii „Nu, mulțumesc, începeți descărcarea” pentru a începe descărcarea arhivei MySQL. După ce arhiva a fost descărcată, deschideți-o și transferați tot conținutul folderului în „C:\Server\web\mysql\”
Acum deschideți fișierul de setări MySQL – „C:\Server\web\mysql\my-default.ini”. Îi ștergem tot conținutul și ne introducem datele acolo.
port=3306
gazdă=127.0.0.1
port=3306
bind-address=127.0.0.1
enable-named-pipe
basedir="C:/Server/web/mysql/"
datadir="C:/Server/web/mysql/data/"
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Asta e tot. În fișierul de configurare, am indicat că scripturile pot accesa serverul atât prin IP local, cât și printr-o conexiune socket.
Mai rămâne puțin de făcut. Să adăugăm căile către Apache și MySQL la variabila de sistem „PATH”, pentru aceasta:
  1. Trageți cursorul mouse-ului în colțul din dreapta jos al ecranului
  2. Faceți clic pe pictograma Căutare și introduceți: panoul de control
  3. Selectați Sistem->Avansat
  4. Selectați Variabile de mediu, din meniul Variabile de sistem, găsiți variabila PATH și faceți clic pe ea.
  5. Introduceți căile către Apache și MySQL:
;C:\Server\web\apache\bin;C:\Server\web\mysql\bin
În continuare, vom instala serviciile Apache și MySQL. Pentru a face acest lucru, utilizați comanda rapidă de la tastatură „Win ​​+ X”, un meniu drop-down va apărea în colțul din stânga jos. Selectați „Prompt de comandă (Administrator)”.
Pe linia de comandă, intrați pentru a instala Apache:
httpd –k instalare
pentru a instala MySQL:
mysqld.exe --install MySQL --defaults-file=”C:\Server\web\mysql\my-default.ini”
Să setăm o parolă pentru utilizatorul MySQL. Pentru a face acest lucru, porniți serviciul MySQL cu comanda:
NET porniți MySQL
După ce serviciul a început, setați o parolă:
mysqladmin –u parola root Parola ta
Am înregistrat două site-uri în fișierul „httpd-vhosts.conf”; pentru ca browserul să le vadă, numele site-urilor trebuie adăugate la fișierul „hosts”. Să mergem la dosar:
C:\Windows\System32\Drivers\etc\
deschideți fișierul „gazde” cu orice editor de text (rulați ca administrator) și adăugați la sfârșitul fișierului:
127.0.0.1 localhost
127.0.0.1 phpmyadmin
Salvați fișierul.
Pentru confortul pornirii și opririi serviciilor Apache și MySQL, vom crea fișierele start-server.bat și stop-server.bat.
Pentru a face acest lucru, să mergem la folderul „C:\Server\” și să creăm aceste două fișiere.
Conținutul „start-server.bat”:
@echo dezactivat
NET start Apache2.4
NET porniți MySQL
Conținutul „stop-server.bat”:
@echo dezactivat
NET opriți Apache2.4
NET opri MySQL
Configurarea Apache, PHP și MySQL este acum finalizată. Pentru a testa serverul, să creăm un fișier „index.php” cu conținutul din folderul „C:\Server\domains\localhost\public_html”:

Apoi, să pornim serverul nostru; pentru a face acest lucru, rulați „start-server.bat” ca administrator. Odată ce serverul a pornit, deschideți browserul și introduceți „localhost” în bara de adrese.
Ar trebui să apară pagina de informații PHP.

Pregătirea dosarelor

Chiar nu îmi place să am totul în jur, așa că mai întâi să creăm foldere în care vor fi localizate programele și site-urile noastre web.
Creați un folder „Server” pe unitatea „C:\” (sau oriunde vă este mai convenabil):
C:\Server\
Să creăm 2 foldere în el:
C:\Server\web – acesta este folderul în care vom avea programe
C:\Server\domains – iar site-urile noastre web vor fi în acest folder
Deci, în folderul \web\ vom crea 3 foldere pentru apache, php, mysql:
C:\Server\web\apache\
C:\Server\web\php\
C:\Server\web\mysql\
Apoi, accesați folderul domenii și creați folderul \localhost\
C:\Server\domains\localhost\
În interiorul folderului vom avea 2 subdosare: public_html – pentru fișierele site-ului; jurnalele – pentru fișierele text care înregistrează „cine” a accesat site-ul și ce erori au apărut în funcționarea site-ului.
C:\Server\domains\localhost\public_html\
C:\Server\domains\localhost\logs\
Aceasta încheie structura folderului, să trecem la configurarea Apache.

Configurare Apache

Pentru a instala Apache, avem nevoie de Apache însuși (Cap). Deoarece avem Windows 8.1 x64, vom instala Apache x64.
Pentru a descărca, urmați linkul:
www.apachelounge.com/download/win64
și descărcați „httpd-2.4.6-win64.zip”. Avem nevoie și de „Microsoft Visual C++ 2010 Redistributable Package (x64)” pentru funcționarea normală. Pentru a face acest lucru, descărcați-l de pe acest link:
www.microsoft.com/ru-ru/download/details.aspx?id=14632
și instalați.
După ce arhiva noastră a fost descărcată din Apache, să o deschidem. După ce am deschis arhiva, vom vedea folderul „Apache24”, intrați în el. Vor apărea multe foldere și fișiere de program, despachetați totul în folderul pregătit anterior:
C:\Server\web\apache\
Ar trebui să arate așa:
C:\Server\web\apache\bin\
C:\Server\web\apache\cgi-bin\
C:\Server\web\apache\conf\
C:\Server\web\apache\error\
C:\Server\web\apache\htdocs\
C:\Server\web\apache\icons\
C:\Server\web\apache\include\
C:\Server\web\apache\lib\
C:\Server\web\apache\logs\
C:\Server\web\apache\manual\
C:\Server\web\apache\module\
Nu avem nevoie de foldere precum \cgi-bin\, \htdocs\, \icons\ și \manual\ - le puteți șterge.
Să mergem la dosar:
C:\Server\web\apache\conf\
Și deschideți fișierul de configurare Apache – „httpd.conf” cu orice editor de text. În acest fișier, fiecare linie conține directive pentru configurarea Apache, iar liniile care încep cu semnul # (hash) conțin un comentariu și o explicație. Să începem configurarea:

Fișierul de configurare Apache

# Directiva Apache
ServerRoot „C:/Server/web/apache”
# Ascultați pe portul IP local (80 prin standard)
Ascultă 127.0.0.1:80
# în continuare vom include biblioteci de extensii pentru Apache
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule php5_module „C:/Server/web/php/php5apache2_4.dll”
# îi spunem lui Apache că fișierele cu extensia php ar trebui tratate ca scripturi php
Aplicația AddHandler/x-httpd-php .php
# specificați locația fișierului de setări php
PHPIniDir „C:/Server/web/php”
# schimba numele serverului
ServerName 127.0.0.1:80
# schimba accesul la director

Opțiunile Include Indexuri FollowSymLinks
AllowOverride All
Permite de la toți


# director cu site-urile noastre
DocumentRoot „C:/Server/domenii”
# fișiere index, după prioritate.

DirectoryIndex index.php index.html index.htm index.shtml

# folder pentru fișierele jurnal
ErrorLog „C:/Server/domains/logs/error.log”
CustomLog „C:/Server/domains/logs/access.log”
# adăugați alias pentru phpMyAdmin și corectați alias pentru cgi

Alias ​​/pma „C:/Server/domains/phpMyAdmin”
ScriptAlias ​​​​/cgi-bin/ „C:/Server/web/apache/cgi-bin/”

# editați calea pentru cgi

AllowOverride Nici unul
Opțiuni Niciuna
Solicitați toate acordate

# tipuri de fisiere


AddType text/html .shtml
AddOutputFilter INCLUDE .shtml
Aplicația AddType/x-httpd-php .php
Aplicație AddType/x-httpd-php-source .phps

# Alte configurații:



BrowserMatch „MSIE 10.0;” bad_DNT


RequestHeader dezactivat DNT env=bad_DNT

Aceasta completează configurarea httpd.conf.
Configurații suplimentare au fost incluse în fișierul de configurare Apache httpd.conf:
Includeți conf/extra/httpd-mpm.conf
Includeți conf/extra/httpd-autoindex.conf
Includeți conf/extra/httpd-vhosts.conf
Includeți conf/extra/httpd-manual.conf
Includeți conf/extra/httpd-default.conf
Să deschidem fișierul „C:\Server\web\apache\conf\extra\httpd-mpm.conf” și să-l parcurgem rapid.
# indicați unde vom stoca fișierul pid:

Fișierul Pid „C:/Server/web/apache/logs/httpd.pid”

Lăsăm neschimbați parametrii rămași. Să deschidem fișierul „httpd-autoindex.conf”, să schimbăm doar liniile cu calea de acolo:
Alias ​​/icoane/ „c:/Server/web/apache/icons/”

Opțiuni Indexuri MultiViews
AllowOverride Nici unul
Solicitați toate acordate

Fișierul Apache Hosts

# folosind domeniul localhost ca exemplu

DocumentRoot „C:/Server/domains/localhost/public_html”
ServerName gazdă locală
ErrorLog „C:/Server/domains/localhost/logs/error.log”
CustomLog „C:/Server/domains/localhost/logs/access.log” comun


# adăugați phpMyAdmin pentru viitor (nu uitați să creați un folder)

DocumentRoot „C:/Server/domains/phpmyadmin/public_html”
ServerName gazdă locală
ErrorLog „C:/Server/domains/phpmyadmin/logs/error.log”
CustomLog „C:/Server/domains/phpmyadmin/logs/access.log” comun

Aceasta se încheie editarea fișierului. În continuare, în fișierele rămase edităm doar căile:
Fișierul „httpd-manual.conf”:
AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "C:/ Server/web/apache/manual$1"

Nu se fac modificări în fișierul „httpd-default.conf”. Aceasta completează configurarea Apache.

Configurare PHP

Deoarece avem Windows 8.1 x64 și Apache x64 instalat și configurat, atunci php ar trebui să fie x64.
Hai sa mergem pe site:

și descărcați arhiva php a celei mai recente versiuni. Avem nevoie de php ca modul, de exemplu. Pentru a face acest lucru, descărcați Thread Safe. După ce arhiva a fost descărcată, deschideți-o și transferați conținutul în folderul „C:\Server\web\php\”. Să creăm două foldere goale „tmp” și „upload”. Apoi, în acest folder, căutați fișierul „php.ini-development” și redenumiți-l în „php.ini”. Deschideți fișierul într-un editor de text și modificați directivele (liniile de comentare din fișier încep cu punct și virgulă).

Configurarea php.ini

short_open_tag = Activat
zlib.output_compression = Activat
dimensiune_max_post = 64M
include_path = ".;C:\Server\web\php\includes"
extension_dir = "C:/Server/web/php/ext"
upload_tmp_dir = "C:/Server/web/php/upload"
upload_max_filesize = 64M
extensie=php_bz2.dll
extensie=php_curl.dll
extensie=php_gd2.dll
extensie=php_mbstring.dll
extensie=php_mysql.dll
extensie=php_mysqli.dll
extensie=php_pdo_mysql.dll
extensie=php_sockets.dll
extensie=php_sqlite3.dll
; în secțiune indicăm fusul orar al serverului nostru (http://php.net/date.timezone)
date.timezone = „Asia/Ekaterinburg”
session.save_path = „De la:/Server/web/php/tmp/”


Aceasta completează configurația php.

Configurarea MySQL

Instalăm MySQL x64 ca socket sub Windows. Descărcați arhiva cu cea mai recentă versiune de MySQL x64:
dev.mysql.com/downloads/mysql
În partea de jos a paginii găsim Windows (x86, 64-bit), ZIP Archive și faceți clic pe butonul „Download”. Veți fi redirecționat către pagina de înregistrare de pe site. Faceți clic în partea de jos a paginii „Nu, mulțumesc, începeți descărcarea” pentru a începe descărcarea arhivei MySQL. După ce arhiva a fost descărcată, deschideți-o și transferați tot conținutul folderului în „C:\Server\web\mysql\”
Acum deschideți fișierul de setări MySQL – „C:\Server\web\mysql\my-default.ini”. Îi ștergem tot conținutul și ne introducem datele acolo.
port=3306
gazdă=127.0.0.1
port=3306
bind-address=127.0.0.1
enable-named-pipe
basedir="C:/Server/web/mysql/"
datadir="C:/Server/web/mysql/data/"
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Asta e tot. În fișierul de configurare, am indicat că scripturile pot accesa serverul atât prin IP local, cât și printr-o conexiune socket.
Mai rămâne puțin de făcut. Să adăugăm căile către Apache și MySQL la variabila de sistem „PATH”, pentru aceasta:
  1. Trageți cursorul mouse-ului în colțul din dreapta jos al ecranului
  2. Faceți clic pe pictograma Căutare și introduceți: panoul de control
  3. Selectați Sistem->Avansat
  4. Selectați Variabile de mediu, din meniul Variabile de sistem, găsiți variabila PATH și faceți clic pe ea.
  5. Introduceți căile către Apache și MySQL:
;C:\Server\web\apache\bin;C:\Server\web\mysql\bin
În continuare, vom instala serviciile Apache și MySQL. Pentru a face acest lucru, utilizați comanda rapidă de la tastatură „Win ​​+ X”, un meniu drop-down va apărea în colțul din stânga jos. Selectați „Prompt de comandă (Administrator)”.
Pe linia de comandă, intrați pentru a instala Apache:
httpd –k instalare
pentru a instala MySQL:
mysqld.exe --install MySQL --defaults-file=”C:\Server\web\mysql\my-default.ini”
Să setăm o parolă pentru utilizatorul MySQL. Pentru a face acest lucru, porniți serviciul MySQL cu comanda:
NET porniți MySQL
După ce serviciul a început, setați o parolă:
mysqladmin –u parola root Parola ta
Am înregistrat două site-uri în fișierul „httpd-vhosts.conf”; pentru ca browserul să le vadă, numele site-urilor trebuie adăugate la fișierul „hosts”. Să mergem la dosar:
C:\Windows\System32\Drivers\etc\
deschideți fișierul „gazde” cu orice editor de text (rulați ca administrator) și adăugați la sfârșitul fișierului:
127.0.0.1 localhost
127.0.0.1 phpmyadmin
Salvați fișierul.
Pentru confortul pornirii și opririi serviciilor Apache și MySQL, vom crea fișierele start-server.bat și stop-server.bat.
Pentru a face acest lucru, să mergem la folderul „C:\Server\” și să creăm aceste două fișiere.
Conținutul „start-server.bat”:
@echo dezactivat
NET start Apache2.4
NET porniți MySQL
Conținutul „stop-server.bat”:
@echo dezactivat
NET opriți Apache2.4
NET opri MySQL
Configurarea Apache, PHP și MySQL este acum finalizată. Pentru a testa serverul, să creăm un fișier „index.php” cu conținutul din folderul „C:\Server\domains\localhost\public_html”:

Apoi, să pornim serverul nostru; pentru a face acest lucru, rulați „start-server.bat” ca administrator. Odată ce serverul a pornit, deschideți browserul și introduceți „localhost” în bara de adrese.
Ar trebui să apară pagina de informații PHP.

(puteți citi despre configurația parametrică a Apache 2.4.34 într-un alt articol)

Problemă la instalarea Apache pe Windows

Principala problemă a instalării serverului Web Apache pe Windows este că, după instalarea inițială a distribuției, întregul pachet (programe executabile, fișiere de configurare, fișiere jurnal de server și o zonă de fișiere pentru găzduirea paginilor Web) este plasat într-un singur loc. Acest lucru interferează cu funcționarea normală a produsului din următoarele motive:

  • Diferențierea drepturilor de acces. Fișierele executabile ar trebui să rămână neschimbate, fișierele de configurare ar trebui să fie gestionate de administratorul serverului web, iar dezvoltatorii și administratorii site-ului ar trebui să aibă acces la zona de fișiere a paginilor web. Drepturile de acces la folderul „Fișiere de program” sunt configurate în ipoteza că acesta stochează module executabile ale pachetelor software care nu necesită modificare.
  • Aglomerarea folderelor de sistem. Dosarul „Fișiere de program” al sistemului de operare Windows este destinat inițial să conțină numai fișiere executabile. Poate fi amplasat pe un volum separat, a cărui dimensiune este selectată de administratorul de sistem pe baza ipotezei relativei sale constante. Cu siguranță nimeni nu se așteaptă ca datele utilizatorului, galeriile de imagini și o arhivă de fișiere de site să fie stocate în acest folder.

Prin urmare, instalarea Apache pe Windows ar trebui efectuată în două etape:

  1. Instalarea inițială a pachetului software în folderul selectat.
  2. Optimizarea amplasării zonelor de fișiere ale serverului web și modificarea configurației acestuia în consecință.

Când modificați fișierele de configurare Apache, trebuie să vă amintiți întotdeauna asta caracterul slash înainte trebuie folosit ca separator de cale pentru fișiere și foldere, ca în sistemele de operare Unix și Linux, mai degrabă decât o „backslash” ca în Windows.

Instalare inițială

Instalarea necesită cel puțin sistemul de operare Windows XP SP3 (această versiune mai veche va necesita un server Web construit cu compilatorul VC9 sau VC10). Versiunile moderne ale Apache nu acceptă sistemul de operare Windows 2000.

Pachetul de distribuție Apache pentru Windows poate fi descărcat de la unul dintre cei doi furnizori „oficiali”: Apache Lounge (numai versiunea 2.4, cu documentație) sau Apache Haus (versiunile 2.4 și 2.2, fără documentație). Este o arhivă ZIP, care, conform furnizorilor de distribuție, trebuie dezambalată la rădăcina unității C:.

Deoarece vom optimiza în continuare plasarea structurii de fișiere a serverului web, instalarea inițială trebuie efectuată în folderul care este destinat plasării modulelor executabile ale serverului web (exe-, lib-, so- file și altele care nu sunt supuse modificărilor). Acesta poate fi folderul de sistem „Program Files” sau altul ales de administratorul de sistem.

După instalarea inițială, trebuie să vă mutați din folderul „de bază” într-o altă locație de pe folderele discului cu fișiere care „ideologic” nu se referă la serverul web, ci la site-ul web. Pentru certitudine, vom presupune că, după despachetarea distribuției, toate componentele acesteia se află în folderul „C:\Program Files\Apache24”, iar site-ul web va fi localizat în folderul „D:\www”.

Optimizarea plasării zonelor de fișiere

Imediat după instalare, structura de foldere a pachetului software Apache arată astfel:

Bin - fișiere executabile de server web.
cgi-bin— Scripturi CGI ale site-ului Web.
conf— Fișiere de configurare a serverului web.
eroare — pagini de eroare a protocolului HTTP.
htdocs— zona de fișiere a site-ului Web (cu alte cuvinte, site-ul Web se află aici).
pictograme - pictograme server web
include - fișierele antet incluse (fișiere h), necesare la construirea unui server Web cu compilatorul VC.
lib - fișiere de bibliotecă de server web.
busteni— Jurnalele de operare a serverului web.
manuale - documentație în format HTML.
module - module software suplimentare ale serverului Web (so-files).

Dintre folderele enumerate mai sus, patru (cgi-bin, conf, htdocs și logs) nu aparțin folderului de bază al serverului Web. Din trebuie să copiați în folderul de lucru al site-ului Web: „D:\www”. Dosarele originale ar putea fi șterse, dar pot fi necesare pentru a restabili situația inițială dacă ceva nu merge bine la configurarea serverului web. Pe de altă parte, dacă sunt lăsate în același loc, atunci din cauza configurării incomplete a serverului Web, se poate întâmpla ca aceste foldere să fie folosite, și nu cele pe care le dorim. Prin urmare, după ce le copiați, este mai bine să le redenumiți pur și simplu în cgi-bin.0, conf.0, htdocs.0 și, respectiv, logs.0.

Configurarea unei noi structuri de fișiere

Acum puteți reflecta structura actuală a fișierelor a serverului web în parametrii fișierului de configurare „D:\www\conf\httpd.conf”:

  1. ServerRoot„C:/Fișiere de program/Apache24” # cale către folderul de bază al serverului web
  2. PidFile„D:/www/logs/httpd.pid” # ID-ul procesului serverului web
  3. DocumentRoot„D:/www/htdocs” # site-ul web este găzduit aici
  4. <Director"D:/www/ htdocs"> # proprietăți ale folderului cu site-ul web

  5. ErrorLog„D:/www/logs/error.log” # Jurnal de erori de server web
  6. Jurnal personalizat„D:/www/logs/access.log” comun # Jurnalul serverului web
  7. ScriptAlias ​​​​/cgi-bin/„D:/www/cgi-bin/” # folder de scripturi CGI de server
  8. <Director"D:/www/ cgi-bin"> # proprietățile folderului de script de server

  9. TipuriConfig D:/www/conf/mime.types # descrieri tip MIME
  10. Include„D:/www/conf/extra/ httpd-manual.conf" # setare pentru documentația însoțitoare

Vă rugăm să rețineți că la pasul 2 trebuie să adăugați o linie cu parametrul PidFile în fișierul de configurare, deoarece acest parametru nu este prezent în fișierul de configurare de referință. Parametrii rămași din fișierul de configurare sunt deja prezenți - trebuie să găsiți liniile care le conțin și să înlocuiți căile originale ale folderului cu altele noi.

Punctul 10 presupune că pentru a permite accesul la documentația HTML prin linkul „http://localhost:8080/manual” trebuie să decomentați linia corespunzătoare cu parametrul Include și să specificați o nouă cale către fișierul de configurare inclus. Cu toate acestea, deoarece locația documentației s-a schimbat, de asemenea, va trebui să faceți o modificare suplimentară a fișierului „D:\www\conf\extra\httpd-manual.conf” prin analogie cu pașii 3 și 8:

  1. AliasMatch^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "C:/Program Fișiere/Apache24/ manual $1"
  2. <Director„C:/Fișiere de program/Apache24/ manual">

Pornirea serverului și verificarea setărilor

Deoarece am schimbat structura de fișiere a serverului web, trebuie să lansați modulul executabil de server cu comanda (poate fi scris într-un fișier bat sau cmd): „C:\Program Files\Apache24\bin\httpd.exe " -w -f "D: \www\conf\httpd.conf" -d "C:\Program Files\Apache24\."

Apache care rulează în modul aplicație utilizator (adică, lansat folosind linia de comandă tocmai dată) poate fi oprit cu combinația de taste +[C]. Dacă întâmpinați dificultăți, puteți utiliza următoarea comandă: taskkill /f /IM httpd.exe

Pentru a instala Apache ca serviciu, trebuie să rulați comanda: „C:\Program Files\Apache24\bin\httpd.exe” -k instalează-f „D:\www\conf\httpd.conf” -d „C:\Program Files\Apache24\”.

Pornirea și oprirea serviciului Apache Web server se face cu comenzile: „C:\Program Files\Apache24\bin\httpd.exe” -k începeși „C:\Program Files\Apache24\bin\httpd.exe” -k oprește-te respectiv.

Puteți elimina Apache din lista de servicii Windows folosind comanda: „C:\Program Files\Apache24\bin\httpd.exe” -k dezinstalează

Verificarea instalării corecte și a configurației inițiale a serverului Web se realizează prin introducerea URL-ului în browserul Web: „http://localhost:80/”. Dacă totul a fost făcut corect, ar trebui să se deschidă o pagină cu textul „Funcționează!”

Dacă documentația însoțitoare a fost instalată în format HTML, ar trebui să fie disponibilă prin linkul „http://localhost:80/manual/”

Apache menține jurnalul de acces la site în fișierul „D:\www\conf\access.log”. Informațiile despre problemele de funcționare a serverului sunt înregistrate în fișierul „D:\www\conf\error.log”. Analiza acestuia poate fi deosebit de utilă la configurarea execuției scripturilor CGI.

Configurare suplimentară

Pe lângă setările enumerate mai sus, trebuie să verificați valoarea parametrului Listen, care specifică setările interfeței de rețea (adresa IP și numărul portului TCP) pe care serverul va accepta conexiuni client. Dacă Apache este utilizat de un dezvoltator web individual, atunci se poate recomanda următoarea configurație:

Asculta 127.0.0.1:8080 # parametrii interfeței de rețea

Numărul portului TCP nu trebuie să intre în conflict cu alt software instalat pe computer. Astfel, portul standard HTTP 80 este adesea ocupat de clientul Skype. Pentru a partaja serverul într-o rețea, trebuie să specificați adresa IP corectă sau numele rețelei computerului pe care este instalat serverul Web.

Serverul web Apache este cel mai adesea folosit împreună cu interpreți pentru limbaje de scripting pe server, cum ar fi PHP și Perl. Pentru ca scripturile PHP să fie utilizate pe site-ul Web (presupunând că PHP este instalat în folderul C:\PHP5), trebuie să adăugați următoarele linii la fișierul de configurare „D:\www\conf\httpd.conf” :

  1. LoadModule php5_module" C:/PHP5/php5apache2_2.dll"
  2. Aplicația AddType/x-httpd-php .php
  3. PHPIniDir „C:/PHP5”

De remarcat că în folderul PHP5 trebuie să existe un fișier de configurare php.ini, creat pe baza fișierului php.ini-development (dacă serverul este folosit pentru a dezvolta site-uri Web) sau php.ini-production (acesta este un server Web real). Pentru ca modulele PHP să găsească toate bibliotecile dinamice de care au nevoie, calea către folderul C:\PHP5 trebuie specificată în variabila PATH a mediului Windows.

Scripturile CGI de pe serverul Perl trebuie să ruleze deja dacă sunt îndeplinite două condiții:

  1. Interpretul Perl este instalat pe acest computer.
  2. Prima linie a fișierelor script specifică corect calea către interpretul Perl, de exemplu: #!C:/PERL/bin/perl.exe -w

Pentru a verifica, puteți introduce adresa URL în browser: http://localhost:8080/cgi-bin/printenv.pl, după ce ați corectat anterior prima linie a scriptului printenv.pl în conformitate cu pasul 2.

Nuanțele rămase ale instalării serverului Web Apache pe Windows depășesc domeniul de aplicare al acestui articol.

Selectați cea mai recentă versiune (la momentul scrierii acestui articol - 2.2.17) și accesați lista de distribuții. Pe computerul dvs. de acasă este puțin probabil să aveți nevoie de SSL, așa că descărcați versiunea Win32 Binary fără crypto (fără mod_ssl) (MSI Installer).

Acum rulați programul de instalare (utilizatorul trebuie să aibă drepturi de administrator). La început nu este nimic interesant - doar un ecran de bun venit:

A doua etapă este să fiți de acord cu termenii licenței:

A treia etapă este câteva cuvinte introductive de la dezvoltatori. Faceți imediat clic pe Următorul:

Etapa a patra. Aici trebuie să introduceți date în toate cele trei câmpuri de text. Puteți introduce un domeniu inexistent, cum ar fi test.test sau example.com. Aceste date sunt necesare pentru a crea un fișier de configurare de bază. Sub câmpurile de text, una dintre cele mai importante setări este instalarea Apache ca serviciu sau ca program obișnuit. Selectați „pentru toți utilizatorii, pe portul 80, ca serviciu - Recomandat” - instalați ca serviciu:

Tipul instalatiei. Selectați Personalizat:

A șasea etapă. Selectarea componentelor și locația de instalare. Am lăsat toate valorile implicite:

A șaptea etapă. Totul este gata de instalare. Faceți clic pe Instalare:

Finalizăm instalarea (terminăm):

Instalare completă. În tavă va apărea o pictogramă Apache, cu care puteți opri/porni rapid serviciul:

Verificăm funcționalitatea. Deschideți browserul și introduceți http://localhost/ în bara de adrese. Dacă totul este corect, ar trebui să se deschidă o pagină care spune Funcționează!

Pentru ca serverul să fie accesibil nu numai pe computerul local, ci și din exterior, trebuie să deschideți portul TCP 80 pentru intrare în Windows Firewall.

Deschiderea unui port în Windows Firewall

Deschideți Start -> Control Panel -> System and Security -> Windows Firewall. În coloana din stânga, faceți clic pe linkul „Opțiuni avansate”. În fereastra care se deschide, tot în coloana din stânga, faceți clic pe „Reguli pentru conexiunile de intrare” și apoi în coloana din dreapta „Creați o regulă...”:

Se va deschide Expertul Creare reguli. Selectați tipul de regulă „Pentru port”:

Protocoale și porturi. Protocolul TCP. Mai jos, selectați opțiunea „Porturi locale specificate” și introduceți numărul portului - 80 - în câmpul de text din dreapta:

Acțiune. Selectați „Permite conexiunea”:

Profil. Lăsați-l ca implicit (toate trei opțiuni sunt bifate: domeniu, privat, public):

În cele din urmă, introduceți numele regulii create. De exemplu Apache Web Server:

Asta e tot. Faceți clic pe Terminare. Acum puteți încerca să vă conectați de la alt computer.

Permiteți-mi să vă reamintesc că pentru a vă conecta la server nu numai din rețeaua locală, ci și de pe Internet, trebuie să configurați redirecționarea portului 80 pe router (dacă aveți unul) (redirecționarea portului sau aceasta se numește adesea server virtual). ).

Instalare PHP (manual)

Descărcați cea mai recentă versiune de PHP (5.3.5 la momentul scrierii) de pe site: http://windows.php.net/download/. Există mai multe versiuni disponibile aici:

  1. VC9 x86 Non Thread Safe - pentru instalare pe IIS în modul FastCGI.
  2. VC9 x86 Thread Safe - ???
  3. VC6 x86 Non Thread Safe - pentru instalare pe Apache în modul CGI/FastCGI.
  4. VC6 x86 Thread Safe- pentru instalare pe Apache în modul modul - alegerea noastră.

Deoarece Am început instalarea manual, descărcam arhiva zip.

Despachetăm conținutul arhivei în directorul de instalare. Am selectat C:\Program Files\PHP.

Să mergem la acest director. În rădăcina instalării veți găsi două fișiere php.ini-development și php.ini-production. Aceste fișiere conțin setări de bază. Primul fișier este optimizat pentru dezvoltatori, al doilea pentru sistemele de producție. Principala diferență este că setările pentru dezvoltatori permit afișarea erorilor pe ecran, în timp ce pentru sistemele de producție afișarea erorilor este interzisă din motive de securitate.

Așadar, selectați fișierul de care aveți nevoie (eu am ales php.ini-development), deschideți-l și salvați-l în același folder sub numele php.ini. Această operațiune se poate face într-un notepad obișnuit, dar este mai bine să utilizați un editor mai convenabil, de exemplu notepad2.

Acum trebuie să faceți câteva modificări la php.ini:

  1. Găsiți opțiunea extension_dir (utilizați căutarea CTRL+F) și schimbați calea către folderul ext în conformitate cu calea de instalare PHP. Pentru mine arată așa: extension_dir = „c:\program files\php\ext”
  2. Găsiți opțiunea upload_tmp_dir. Aici trebuie să specificați calea către folderul temporar. Am ales c:\windows\temp. Toate împreună: upload_tmp_dir = „c:\windows\temp”
  3. Găsiți opțiunea session.save_path. Aici trebuie, de asemenea, să specificați calea către folderul temporar: session.save_path = „c:\windows\temp”
  4. Accesați secțiunea Extensii dinamice. Aici trebuie să decomentați liniile (eliminați punctul și virgulă de la început) corespunzătoare modulelor PHP pe care trebuie să le lucrați. Un set de bază de module ar putea arăta cam așa: ;extension=php_bz2.dll ;extension=php_curl.dll ;extension=php_fileinfo.dll extensie=php_gd2.dll ;extension=php_gettext.dll ;extension=php_gmp.dll ;extension=php_intl .dll ;extensie=php_imap.dll ;extensie=php_interbase.dll ;extensie=php_ldap.dll extensie=php_mbstring.dll extensie=php_exif.dll ; Trebuie să fie după mbstring, deoarece depinde de el extension=php_mysql.dll extension=php_mysqli.dll ;extension=php_oci8.dll ; Utilizați cu Oracle 10gR2 Instant Client ;extension=php_oci8_11g.dll ; Utilizați cu Oracle 11g Instant Client ;extension=php_openssl.dll ;extension=php_pdo_firebird.dll ;extension=php_pdo_mssql.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_pdo ;dll ;extension=php_pdo_pdo; extensie =php_pdo_sqlite.dll ;extension=php_pgsql.dll ;extension=php_phar.dll ;extension=php_pspell.dll ;extension=php_shmop.dll ;extension=php_snmp.dll ;extension=php_soap.dll extensie=php_sockets.dll ;qtensionlite=php_s ; . dll extensi=php_sqlite3.dll ;extension=php_sybase_ct.dll ;extension=php_tidy.dll ;extension=php_xmlrpc.dll extensi=php_xsl.dll extensi=php_zip.dll

Acum să trecem la setările Apache.

Deschideți folderul de instalare Apache (în mod implicit C:\Program Files\Apache Software Foundation\Apache2.2\). Deschideți folderul conf. Deschideți fișierul httpd.conf.

Mergeți la sfârșitul fișierului și adăugați următoarele rânduri acolo:

# Charset AddDefaultCharset windows-1251 # PHP LoadModule php5_module "c:\program files\php\php5apache2_2.dll" PHPIniDir "c:\program files\php" Aplicație AddType/x-httpd-php .php

Calea către folderul php este cea pe care ați ales-o în timpul procesului de instalare.

În același fișier găsim următoarele rânduri:

DirectoryIndex index.html

Înainte de index.html adăugăm index.php separat printr-un spațiu. Rezultatul este:

DirectoryIndex index.php index.html

Pentru ca modificările să intre în vigoare, reporniți serviciul Apache. Dacă serviciul repornește, acesta este un semn bun. Dacă nu, căutați erori în fișierele de configurare. Verificați cu deosebită atenție toate căile.

Pentru a vă asigura că PHP funcționează, deschideți directorul de instalare Apache, apoi deschideți folderul htdocs (acesta conține fișierele implicite ale site-ului web). Creați un fișier index.php în acest folder cu următorul conținut:

Acum deschideți http://localhost/ în browser. Dacă totul este în regulă, veți vedea o pagină similară cu aceasta:

Dacă vedeți o pagină care spune „Funcționează!”, încercați să reîmprospătați pagina folosind CTRL+F5.

Instalarea MySQL

Mutat într-un articol separat.