Mis on apatšid? Apache'i installimine Windowsi (7). PHP kataloogi lisamine Windowsi PATH-i

Apache HTTP server(inglise keelest lünklik server, “server koos plaastritega”, lisaks on vihje apatšide indiaani hõimule. Moonutatud hääldus on vene kasutajate seas tavaline Apache) on täisfunktsionaalne, laiendatav veebiserver, mis toetab täielikult HTTP/1.1 protokolli ja on avatud lähtekoodiga.

Server võib töötada peaaegu kõigil levinud platvormidel. Valmis serverite käivitatavad failid on Windows NT, Windows 9x, OS/2, Netware 5.x ja mitme UNIX süsteemi jaoks. Samal ajal on seda väga lihtne paigaldada ja konfigureerida.

Tegelikult peetakse Apache serveri peamisteks eelisteks nii konfiguratsiooni paindlikkust kui ka töökindlust. See võimaldab teil andmete edastamiseks ühendada väliseid mooduleid, kasutada kasutajate autentimiseks DBMS-i, muuta veateateid jne. Toetab IPv6.

Apache konfigureeritakse tekstikonfiguratsioonifailide abil. Põhisätted on juba vaikimisi konfigureeritud ja töötavad enamikul juhtudel. Kui standardse Apache funktsionaalsusest ei piisa, siis on võimalik kasutada erinevaid Apache Groupi ja kolmandate osapoolte arendajate kirjutatud mooduleid. Oluline eelis on see, et loojad suhtlevad aktiivselt kasutajatega ja vastavad kõikidele veateadetele.

Lihtsaim funktsioon, mida Apache saab täita, on istuda serveris ja teenindada tavalist HTML-i veebisaiti. Kui konkreetse lehe päring on vastu võetud, saadab server oma vastuse brauserile. Päring on brauseri aadressiribale sisestatud aadress.

Saidi disaini ja funktsionaalsete osade eraldamiseks ning staatiliste objektide muutmise lihtsustamiseks on olemas SSI-tehnoloogia. See võimaldab teil panna kogu korduva teabe ühte faili (nt top.inc) ja seejärel lisada lehtedele selle lingi. Seejärel, kui on vaja teavet muuta, muudetakse ainult ühes failis olevat teavet. Apache server toetab seda tehnoloogiat ja võimaldab kasutada serveripoolseid lisamisi täies mahus.

Veebiserveri funktsioone ei täida mitte arvuti ise, vaid sellesse installitud programm: see tähendab, et kui kasutaja brauser loob ühenduse veebiserveriga ja saadab GET-päise (faili edastamise taotlus), on see Apache. mis töötleb taotlust. Apache kontrollib, kas GET-i päises määratud fail on olemas ja kui on, saadab selle koos päistega brauserisse.

Apache on omamoodi veebiserveri standard Internetis. Selle peamine konkurent on Microsofti IIS (Internet Information Server), mis töötab Windowsis. Apache, kuigi selle Windowsi jaoks on olemas versioonid, on installitud peamiselt Unixi sarnastele operatsioonisüsteemidele – Linuxile ja FreeBSD-le. Samuti tuleb märkida, et enamik hostijaid kasutab Apache'i, mitte IIS-i. IIS on tavaliselt installitud ettevõtte serveritesse, kus töötab Windows.

Apache server oli üks esimesi servereid, mis toetas virtuaalservereid (hoste). See võimaldab majutada mitut täisväärtuslikku veebisaiti ühes füüsilises serveris. Igal neist võib olla oma domeen, administraator, IP-aadress ja nii edasi.

Apache toetab CGI ja PHP tehnoloogiaid, samuti keelte ühendamise võimalust. See muudab dünaamiliste veebilehtedega töötamise palju lihtsamaks (mis tegelikult on tänapäeval peaaegu kõik veebilehed).

Praegu on Apache server installitud 67% kogu maailma serveritest.

Loomise ajalugu

Apache Serveri arendab ja hooldab Apache Project.

See oli algselt NCSA veebiserveri variatsioon, mis töötati välja Illinoisi ülikooli riiklikus superarvutite arenduskeskuses. Kuid 1994. aastal lahkus NCSA peamine arendaja projektist, jättes tema järgijatel oma serveri ise välja nuputama. Aja jooksul hakkasid NCSA serverisse ilmuma parandused ja täiendused - nn plaastrid (plaastrid, inglise keelest tõlgitud kui "plaastrid"). Ja 1995. aasta aprillis anti välja Apache serveri esimene versioon, mis põhines NCSA serveri versioonil 1.3. Apache esimene versioon sisaldas lihtsalt kõiki teadaolevaid NCSA-serveri parandusi. Ja nimi Apache ise tuleb sellest – “A PatCHy”.

Apache sai hiljem iseseisvaks arenduseks. Alates teisest versioonist on kood ümber kirjutatud, nii et see ei sisalda vihjeid NCSA koodile. Apache serverit haldab praegu vabatahtlike programmeerijate rühm Apache Group.

Apache server töötati algselt välja Linuxi ja Unixi operatsioonisüsteemide jaoks, kuid aja jooksul ilmusid selle versioonid Windowsi ja OS/2 jaoks.

Hetkel toimub arendus harus 2.2 ning versioonides 1.3 ja 2.0 tehakse ainult turvaveaparandusi. Tänaseks on haru 2.4 uusim versioon versioon 2.4.3, mis avaldati 21. augustil 2012. Esimese versiooni uusimad parandused on tähistatud 1.3.42.

Apache veebiserverit arendab ja haldab avatud arendajate kogukond Apache Software Foundationi egiidi all ning see sisaldub paljudes tarkvaratoodetes, sealhulgas Oracle DBMS ja IBM WebSphere.

Alates 1996. aasta aprillist kuni tänapäevani on see olnud kõige populaarsem HTTP-server Internetis. Kõrgeimad näitajad saavutati 2012. aastal – Apache töötas 67% serveritest üle maailma. 2011. aastal oli selle osakaal 59%, 2009. aastal 46% ja 2007. aastal 51%.

Apache sisemise süsteemi kõne diagramm

Apache arhitektuur

Apache tuum sisaldab põhifunktsioone, nagu konfiguratsioonifailide haldamine, HTTP-protokoll ja mooduli laadimissüsteem. Tuuma (erinevalt moodulitest) on täielikult välja töötanud Apache Software Foundation, ilma kolmandate osapoolte programmeerijate osaluseta.

Teoreetiliselt võib Apache tuum toimida puhtal kujul, ilma mooduleid kasutamata. Sellise lahenduse funktsionaalsus on aga äärmiselt piiratud.

Apache tuum on kirjutatud täielikult C programmeerimiskeeles.

Apache konfiguratsioonisüsteem põhineb tekstipõhistel konfiguratsioonifailidel. Sellel on kolm tingimusliku konfiguratsiooni taset:

  • Serveri konfiguratsioon (httpd.conf)
  • Virtuaalse hosti konfiguratsioon (httpd.conf alates versioonist 2.2, extra/httpd-vhosts.conf)
  • Kataloogitaseme konfiguratsioon (.htaccess)

Sellel on oma konfiguratsioonifaili keel, mis põhineb direktiiviplokkidel. Peaaegu kõiki kerneli parameetreid saab muuta konfiguratsioonifailide, sealhulgas MPM-juhtimise kaudu. Enamikul moodulitel on oma parameetrid. Mõned moodulid kasutavad oma töös operatsioonisüsteemi konfiguratsioonifaile (näiteks /etc/passwd ja /etc/hosts). Lisaks saab parameetreid määrata käsurea lülitite kaudu.

Apache veebiserveri jaoks on palju sümmeetrilisi multitöötlusmudeleid. Apache HTTP Server toetab ka modulaarsust. Seal on üle 500 mooduli, mis täidavad erinevaid funktsioone. Kuigi mõned neist on välja töötatud otse Apache Software Foundationi meeskonna poolt, on enamik olemasolevaid mooduleid välja töötatud kolmanda osapoole avatud lähtekoodiga arendajate poolt.

Moodulid saab lisada serverisse kompileerimise ajal või laadida dünaamiliselt konfiguratsioonifaili käskkirjade kaudu.

Moodulite abil saate rakendada järgmist:

  1. Toetatud programmeerimiskeelte laiendamine
  2. Lisafunktsioonide lisamine või põhifunktsioonide muutmine.
  3. Veaparandused
  4. Suurenenud turvalisus.

Mõned veebirakendused, nagu ISPmanager ja VDSmanager juhtpaneelid, on rakendatud Apache moodulina.

Apache serveril on sisseehitatud virtuaalse hosti mehhanism. Tänu sellele on võimalik ühel IP-aadressil täielikult teenindada mitut saiti (domeeninime), kuvades igaühe jaoks oma sisu.

Iga virtuaalhosti jaoks saate määrata oma kerneli ja mooduli sätted, piirata juurdepääsu kogu saidile või üksikutele failidele. Mõned MPM-id, nagu Apache-ITK, võimaldavad teil käitada iga virtuaalse hosti jaoks eraldi uid-i ja juhendiga httpd-protsessi.

Samuti on olemas moodulid, mis võimaldavad arvestada ja piirata serveriressursse (CPU, RAM, liiklus) iga virtuaalhosti puhul.

Integratsioon muu tarkvara ja programmeerimiskeeltega

Serveri edukaks integreerimiseks erinevate tarkvarade ja programmeerimiskeeltega on täiendavad moodulid:

  • PHP (mod_php)
  • Python (mod python, mod wsgi)
  • Rubiin (apatš-rubiin)
  • Perl (mod perl)
  • ASP (apache-asp)
  • Tcl (neet)

Apache toetab CGI ja FastCGI mehhanisme, mis võimaldab käivitada programme kõigis programmeerimiskeeltes, sealhulgas C, C++, Lua, sh, Java.

Turvalisus

Turvalisus Apache'is toimub erinevate mehhanismide abil, mis muu hulgas piiravad juurdepääsu andmetele. Peamised neist on:

  • Juurdepääsu piiramine teatud kataloogidele või failidele.
  • Mehhanism kasutajatele kataloogile juurdepääsu lubamiseks, mis põhineb HTTP autentimisel (mod_auth_basic) ja kokkuvõtte autentimisel (mod_auth_digest).
  • Juurdepääsu piiramine teatud kataloogidele või kogu serverile kasutaja IP-aadresside alusel.
  • Teatud tüüpi failidele juurdepääsu keelamine kõigile või mõnele kasutajale, näiteks juurdepääsu keelamine konfiguratsioonifailidele ja andmebaasifailidele.
  • On mooduleid, mis rakendavad autoriseerimist DBMS-i või PAM-i kaudu.

Mõnel MPM-moodulil on võimalus käitada iga Apache protsessi, kasutades neile kasutajatele ja/või kasutajarühmadele vastavat erinevat uid-i ja gid-d.

Samuti on olemas suexec-mehhanism, mida kasutatakse kasutajaõiguste ja mandaatidega skriptide ja CGI-rakenduste käitamiseks.

Kliendi ja serveri vahel edastatavate andmete krüptimise rakendamiseks kasutatakse SSL-i mehhanismi, mida rakendatakse OpenSSL-i teegi kaudu. Veebiserveri autentimiseks kasutatakse X.509 sertifikaate.

Saadaval on välised turbetööriistad, näiteks mod_security.

Keeled

Serveri võimalus kasutaja asukohta määrata ilmus versioonis 2.0. Nüüdsest reprodutseeritakse kõik teenuseteated, aga ka vea- ja sündmusteteated SSI-tehnoloogia abil mitmes keeles.

Serveritööriistade abil on võimalik kuvada erinevaid lehti erineva lokaliseerimisega kasutajatele. Apache toetab paljusid kodeeringuid, sealhulgas Unicode'i, mis võimaldab kasutada mis tahes kodeeringus ja mis tahes keeles loodud lehti.

Sündmuste käsitlemine

Administraator saab seadistada kohandatud lehti ja töötlejaid kõigi HTTP-tõrgete ja sündmuste jaoks, näiteks 404 (ei leitud) või 403 (keelatud). Võimalik on käivitada skripte ja kuvada sõnumeid erinevates keeltes.

Kaasa arvatud serveripoolne

Versioonides 1.3 ja vanemates on juurutatud Server Side Includes mehhanism, mis võimaldab serveri poolel dünaamiliselt HTML-dokumente genereerida.

SSI-d haldab Apache'i põhidistributsioonis sisalduv moodul mod_include.

Apache vs IIS

Arutelu Apache'i või IIS-i valimise üle on sama vana kui arutelu OS-i - Linuxi või Windowsi - valimise üle. Seetõttu tasub enne lõpliku valiku tegemist adekvaatselt hinnata mõlema eeliseid ja puudusi.

Apache ja LAMP serverisüsteemide peamised eelised:

  1. madalad kulud, kuna pole vaja osta tarkvaralitsentse;
  2. paindlik programmeerimine tänu avatud lähtekoodile;
  3. Täiustatud turvalisus Kuna Apache loodi mitte-Windowsi operatsioonisüsteemi jaoks (ja enamik pahavara on kirjutatud Microsofti operatsioonisüsteemi jaoks), on sellel alati olnud turvalisema maine kui Microsofti IIS-i jaoks.

Interneti-teabeteenuste (IIS) eelised:

  1. Windowsi ja IIS-i toetab Microsoft, samas kui Apache'i toetab ainult kasutajakogukond;
  2. IIS toetab Microsofti .NET platvormi ja ASPX skripte;
  3. moodulid võimaldavad lubada heli- ja videosisu voogedastust.

Nende kahe serveri eeliseid võrreldes saab teha mitmeid järeldusi. Esiteks, kui serveri valikul on põhikriteeriumiks litsentside maksumus, siis tasub kindlasti valida LAMP kombinatsioon, kuna see on litsentsimiskuludeta. Teiseks, turvakriteeriumide põhjal on Apache taas eesotsas – tema süsteem on mõnevõrra tõhusam. Kolmandaks töötab IIS ainult Windows OS-is ja kõik operatsioonisüsteemi valiku variatsioonid viivad taas Apache'i.

Ainus võimalus, mille puhul IIS Windowsi platvormil on parim valik, on peamise kriteeriumina kõige kasutajasõbralikumad haldustööriistad. Lisaks peab käivitatav skript tuginema ainult ASPX-ile.

Küll aga on võimalik välja töötada lahendus, mis toetab tööd mõlemas serveris.

Artiklis kirjeldatakse Apache 2.4 + PHP 5.6 + MySQL 5.6 installimist opsüsteemi Windows 7 / 8 / 8.1 / 10

Enne lugemise jätkamist pöörake tähelepanu sellele, kas teil on tõesti vaja seda kõike Windowsi alla installida ja seadistada. Igal juhul lugege artiklit selle kohta. Võib-olla säästab see mitte ainult aega, vaid ka tervist.

See juhend on kasulik algajatele veebiarendajatele, kes installivad oma Windowsi arvutisse Apache veebiserveri PHP-tõlgi uusimate versioonidega. Muidugi on palju lihtsam paigaldada selline koost nagu Denwer või kasutada paigaldajaid ja mitte seadete pärast muretseda. Samas iga veebiarendaja kohustatud mõistab veebiserveri tööprotsessi, selle installimise ja seadistamise protsessi.

Kui soovite installida PHP 7, vaadake artiklit.

Kui serveri kokkupanemisel nende juhiste järgi tekkisid probleemid ja peate end endiselt VEEBIArendjaks, siis oleks õige samm mõista tekkinud probleeme, mitte kirjutada kommentaaridesse, et juhised on nõmedad. Juhised töötavad. Testitud aja ja sadade paigalduste järgi. Olge lihtsate toimingute tegemisel ettevaatlik. Käsitsi sammude sooritamine ja olukordade analüüsimine, kui see ei tööta, lisab teile kui arendajale oskusi. Kui sa ei ole veebiarendaja ega plaani selleks olla, siis otsi internetist lihtne paigaldusviis – need juhised pole sinu jaoks.

Pange tähele, et Windows XP all need versioonid VC11 selle käivitamine on võimatu (või äärmiselt keeruline).

Ettevalmistustööd

Veenduge, et teil oleks Windows 7 või uuem. Kui teil on Windows XP, siis need juhised teid ei aita, kuna siin kirjeldatud Apache versioon ei tööta Windows XP all.

Eemaldage kõik varem installitud veebiserverid, minge teenustesse ja veenduge, et seal pole Apache ega IIS-teenuseid. Kui teil on juba veebiserver installitud, ei tööta teine ​​​​paralleelselt tõenäoliselt üldse.

Kui teil on Skype, keelake seadetes kindlasti pordi 80 kasutamine. Lõppkokkuvõttes peate veenduma, et ükski teenus ei kasuta porti 80.

Töö jaoks on väga soovitav omada failihaldurit, mis võimaldab luua mis tahes laiendiga faile, või, mis veelgi parem, koodiredaktorit nagu Sublime Text või Notepad++ või täisväärtuslikku IDE-d.

Kausta struktuur võib olla erinev, kuid see juhend on kirjutatud konkreetse struktuuri jaoks ja kui te seda järgite, on kõik garanteeritud.
Enne alustamist looge kettale D kausta USR, mille sees looge 5 alamkausta: apache, php, tmp, www, logi. See on õige. Versiooninumbreid täpsustamata.

Kataloogis www looge registrifailid (kasutades failihaldurit või koodiredaktorit), mida on vaja, et kontrollida, kas kõik töötab:

  • index.html sisuga: See toimib!
  • index.php sisuga:

Kui teil pole failihaldurit/koodiredaktorit/IDE-d, laadige alla nende kahe failiga arhiiv. Kuid kui peate end veebiarendajaks, peate hankima tööriistad.

Lisage PATH-süsteemi muutujale:

;D:\USR\apache;D:\USR\apache\bin;D:\USR\php;

Märkused!

Näidiskonfiguratsioonifailides toodud reanumbrid võivad apache ja php muude versioonide puhul erineda.
Kõik käsud, sealhulgas failide redigeerimine, tuleb täita administraatorina.

Apache 2.4 installimine

Kuigi lihtsaks arenduseks PHP-s ei ole vaja eraldi WEB-serverit (PHP-l on sisse ehitatud oma WEB-server, millest peaaegu alati piisab ühe projekti arendamiseks), on siiski soovitatav paigaldada ja seadistada Apache WEB-server , kasvõi sellepärast, et programmeerija peab neid peensusi teadma. Lõppkokkuvõttes peate töötama WEB-serveriga ja tegelema selle konfigureerimisega. Nii et alustame.

  1. Laadimine Apache 2.4 kahendfailid VC11 oma süsteemi jaoks lingil http://www.apachelounge.com/download/VC11/ Tõenäoliselt on teil 64-bitine OS, seega vajate faili nimega httpd-2.4. xx-win64-VC11.zip
  2. Kui vajate lisamooduleid, saate need sealt alla laadida (ei ole põhiinstalli jaoks vajalik)
  3. Pakkige kausta sisu lahti Apache24 allalaaditud arhiivist aadressile D:\USR\apache. Pange tähele, et kausta D:\USR\apache peate arhiivist panema mitte Apache24 kausta, vaid selle sisu. Midagi pole vaja installida.
  4. Muutke faili väärtust ServerRoot"d:/USR/apache" ( rida 37) ja väärtus Dokumendijuur(Ja Otsesed) "d:/USR/www" ( read 242 ja 243). Samuti peaksite rea 218 kommentaari tühistama ja muutma selle järgmiseks: Serverinimi kohalik host:80
  5. Muudame samas failis logisalvestuse parameetreid (leiame parameetrid ja muudame): ErrorLog "D:/USR/log/apache-error.log" CustomLog "D:/USR/log/apache-access.log" ühine
  6. Installige Apache teenus (administraatori nimel). Avage administraatorina käsuviip ja kleepige sinna järgmine rida: D:\USR\apache\bin\httpd.exe -k install
  7. Jälgime veateateid teenuse paigaldamise ajal. Kui kõik on õigesti tehtud, ei tohiks vigu esineda. Kui pärast rea täitmist käsurida enam ei ilmu, siis tegite midagi valesti. Tippimisvigade vältimiseks kasutage lihtsalt kopeerimis- ja kleepimisfunktsioone.
  8. Looge töölauale otsetee D:\USR\apache\bin\ApacheMonitor.exe ja/või asetage see käivitamisse (WIN8-s käivitusakna avamiseks vajutage WIN+R ja seejärel sisestage kest: Käivitamine ja klõpsake nuppu OK)
  9. Käivitage ApacheMonitor. Süsteemisalves ilmub otsetee. Vasakklõpsake sellel ja valige Apache24 -> Start.
  10. Minge brauseris aadressile http://localhost/ - peaksite nägema See toimib!
  11. Kui te sellist silti ei näe, selgitame välja, mis valesti läks (lugesime logisid, googeldame, proovime probleemi ise välja mõelda, kuna otsustasime mõista veebiserveri keerukust)

PHP 5.6 installimine

  1. Laadige alla uusim versioon VC11 x86Keerme ohutu või VC11 x64Keerme ohutu lingi http://windows.php.net/download/ kaudu. Pange tähele, et vajate VC11 ja täpselt Keerme ohutu. Biti laius peaks olema sama, mis Apache. Vajaliku faili nimi on tõenäoliselt järgmine: php-5.6.11-Win32-VC11-x86.zip või php-5.6.11-Win32-VC11-x64.zip
  2. Arhiivi sisu lahtipakkimine D:\USR\php. Nagu Apache puhul, ei pea te midagi installima.
  3. Viilima D:\USR\apache\conf\httpd.conf lisa read: LoadModule php5_module "d:/USR/php/php5apache2_4.dll" AddHandler application/x-httpd-php .php # Tee faili php.ini PHPIniDir "D:/USR/php"
  4. Ja muuda väärtust Kataloogiindeks sisse index.html index.php (rida 276)
  5. ApacheMonitori abil taaskäivitame Apache (Apache24 -> Taaskäivita)
  6. Me läheme brauserisse http://localhost/index.php ja veendume, et PHP töötab.
  7. Failist koopia tegemine D:\USR\php\php.ini-development nimega D:\USR\php\php.ini
  8. Otsingu abil leiame, eemaldame kommentaarid ja muudame parameetreid: extension_dir = "D:/USR/php/ext" sys_temp_dir = "D:/USR/tmp" extension=php_mysql.dll extension=php_mysqli.dll extension=php_openssl.dll date.timezone = Euroopa/Zaporozhye
  9. Käivitage käsureal php -mühendatud moodulite loendi vaatamiseks.
  10. Taaskäivitage Apache, kasutades ApacheMonitorit

Virtuaalsed hostid Apache'is

  1. Kui silute arvutis mitut projekti, võib teil vaja minna virtuaalseid hoste (saite). Näitena vaatleme kahte virtuaalset hosti: s1.localhost Ja s2.localhost. Mugavuse huvides loome samade nimedega kaustu, mis pole reaalses süsteemis üldse vajalik.
  2. Pange tähele, et virtuaalsete hostide kasutamisel parameeter Dokumendijuur Apache konfiguratsioonifailil pole enam mõtet. Serveri peamine host (millele pääseb juurde aadressil http://localhost/) on nüüd olemas esimene virtuaalne host virtuaalse hosti konfiguratsioonifailis!
  3. Kõigepealt peate faili c:\Windows\System32\drivers\etc\hosts lisama järgmised read: 127.0.0.1 s1.localhost 127.0.0.1 s2.localhost

    Seda tuleb teha administraatori nimel. Soovitav on pärast seda taaskäivitada, kuid praktikas polnud seda vaja. Kui te ei saa faili (õigusi) muuta, saate selle oma töölauale kopeerida, muuta ja seejärel tagasi kopeerida.

  4. Virtuaalsete hostide jaoks kaustade loomine D:\USR\www\s1.localhost Ja D:\USR\www\s2.localhost, kuhu failid asuvad. Looge igas kaustas fail index.html sisuga S1 Ja S2 vastavalt (kontrollimaks, kas kõik töötab nii nagu peab)
  5. Seejärel loome logide jaoks kaustad: D:\USR\log\s1.localhost Ja D:\USR\log\s2.localhost- siin salvestatakse iga saidi logid. Tegelikult saab logisid salvestada ühte kausta, kuid ma olen harjunud seda nii tegema - see on minu jaoks mugavam.
  6. Järgmiseks peate lubama virtuaalsete hostide toe. Failis D:\USR\apache\conf\httpd.conf tühjendage rida Kaasake conf/extra/httpd-vhosts.conf
  7. Järgmisena redigeerime faili d:\USR\apache\conf\extra\httpd-vhosts.conf— see peaks välja nägema selline (igal virtuaalsel hostil on oma VirtualHosti plokk): ServerAdmin [e-postiga kaitstud] DocumentRoot "D:/USR/www/s1.localhost" ServerName s1.localhost ServerAlias ​​​​www.s1.localhost ErrorLog "D:/USR/log/s1.localhost/error.log" KohandatudLog "D:/USR/log /s1 .localhost/access.log" tavaline ServerAdmin [e-postiga kaitstud] DocumentRoot "D:/USR/www/s2.localhost" ServerName s2.localhost ServerAlias ​​​​www.s2.localhost ErrorLog "D:/USR/log/s2.localhost/error.log" KohandatudLog "D:/USR/log /s2 .localhost/access.log" tavaline
  8. Esimene virtuaalne host s1.localhost on nüüd süsteemi peamine host, sest selle plokk on konfiguratsioonifailis esikohal, st. on saadaval sisenemisel

Apache (Apache HTTP Server), kuulsaima ja levinuima veebiserveri nimi, mis toetab HTTP/1.1 protokolli. Põhimõtteliselt on veebiserver võimas programm, mis on loodud brauseri aadressiribalt http-päringu töötlemiseks ja selle päringu alusel vajalike failide tagastamiseks. Lihtsustamiseks võimaldavad veebiserverid luua side brauseri ja serveri vahel vastavalt järgmisele skeemile: brauser palub anda talle saidi failid aadressil ja veebiserver annab selle talle. See on väga lihtsustatud. "Suhtlemine" toimub HTTP-protokolli kaudu.

Veebiserverid, sealhulgas Apache, töötati välja spetsiaalselt selleks otstarbeks ja ükski server või hostitarkvara ei tööta ilma HTTP-protokolli kasutava veebiserverita.

Viimasel ajal oli Apache'il oma probleemide lahendamisel virtuaalne monopol. Nüüd hakkab Nignixi veebiserveri aeg otsa saama. Üha enam kasutatakse Apache ja Nignixi sümbioosi.

Ilma veebiserverita ja kohaliku serverita ei saa hakkama. Tänapäeval on olukord selline, et Apache on kasutusel ja pealegi domineerib kõigis kohalikes serverite ehitustes, nii Windowsi kui Linuxi jaoks.

Apache juhtimine

Apache veebiserveriga tutvumiseks tasub end kurssi viia sellega, kuidas Apache teenust kliendi poolelt hallatakse.

On tõenäoline, et Apache veebiteenuse välise haldamise lihtsus muutis selle nii populaarseks (või on see üks põhjusi). Apache veebiteenuse haldamiseks on spetsiaalne fail nimega .htaccess (täpiga alguses). Oma funktsionaalsuse poolest sarnaneb see otsingurobotite failile robots.txt. Sellesse faili kirjutatud erijuhiste abil saate kasutajana kontrollida oma saidi lehtede edastamist, luua ümbersuunamisi jne, ilma serveritarkvarasse süvenemata. Lisaks .htaccess failile on Apache haldamiseks htpasswd fail (samuti täpiga alguses) ja ka mod_auth ja mod_access moodulid.

Kuid pöördume tagasi kohalike serverite juurde. Arvutisse kohaliku serveri installimiseks (loomiseks) ei saa ilma Apacheta hakkama. Tuletan teile veel kord meelde, et akronüümides ja LAMPis tähistab täht [A] veebiserverit Apache.

Kõigis kohalike serverite komplektides, nagu Denver, Open-server, XAMPP jne, on Apache veebiserver a priori olemas. Kui me ise serveri kokku paneme, mida me teeme, tuleb Apache installida iseseisvalt.

Millise Apache versiooni peaksin installima?

Apache arenes välja kahes harus (versioonis): Apache 1.3 ja Apache 2.x. Vana versiooni 1.3 pole vaja installida, seega töötame versiooniga 2.x.

Nüüd kõige segasem osa. Teate, et peaaegu iga programmi saab installida kahel viisil:

  • Autoinstalleri (installer) kasutamine, fail ;
  • Otse, laadides üles kataloogid ja programmifailid ketta soovitud kataloogi.

Apache puhul on olukord järgmine:

  • Apache 2.4.26 uusim versioon (välja antud 2017-06-19) on saadaval ainult käsitsi installimise valikus (link allpool);
  • Installiversioon sisaldab Apache 2.2.25 uusimat versiooni.

See on kõik! Toimus esimene tutvus Apache’iga. Järgmistes artiklites räägin teile, kuidas installida kohalikku arvutisse mõlemad Apache versioonid.

Lõpuks vajalikud lingid

Apache veebiserveri (http) veebisaidil navigeerimine on mõnevõrra segane, seega annan vajalikud lingid:

  • Apache veebiserveri sait (http://httpd.apache.org/).
  • Laadige alla Apache veebiserver ( http://httpd.apache.org/download.cgi)
  • Laadige alla stabiilne versioon – uusim versioon: 2.4.26 (välja antud 2017-06-19) (Windowsi jaoks).
  • Laadige alla aegunud väljaanne – seeria 2.2. 2.2.32 (välja antud 2017-01-13)
  • Binaarsed versioonid: https://archive.apache.org/dist/httpd/binaries/win32/ (2013-07-10)

Mis on Apache? E siis avatud lähtekoodiga tarkvara, veebiserver, mis juhib umbes 46% veebisaitidest kogu maailmas. Ametlik nimi on Apache HTTP Server, mida haldab ja arendab Apache Software Foundation.

Veebiserver võimaldab veebisaitide omanikel oma sisu Internetis edastada, nagu nimi "veebiserver" viitab. Apache on üks vanimaid ja töökindlamaid veebiservereid, mille esimene versioon anti välja enam kui 20 aastat tagasi 1995. aastal.

Kui keegi soovib veebisaiti külastada, sisestab ta domeeninime oma brauseri aadressiribale. Seejärel edastab veebiserver soovitud failid virtuaalse sõnumitoojana.

Hostingeri infrastruktuur kasutab Apache'i paralleelselt teise populaarse veebiserveriga NGINX. See kombinatsioon võimaldab meil mõlemat täielikult ära kasutada. See parandab oluliselt jõudlust, kompenseerides ühe nõrkused teise tugevate külgedega.

Failide töötlemine, andmebaaside töötlemine, e-post ja veebiserver kasutavad erinevat tüüpi serveritarkvarasid. Kõik need rakendused pääsevad juurde pärisserveris salvestatud failidele ja kasutavad neid erinevatel eesmärkidel.

Veebiserveri ülesanne on teenindada veebisaiti Internetis. Selleks toimib see vahendajana serverarvuti ja klientarvuti vahel. See võtab iga kasutajapäringu jaoks serverist sisu ja edastab selle võrku.

Veebiserveri suurim väljakutse on korraga teenindada paljude kasutajate erinevaid päringuid. Veebiserver töötleb faile, mis on kirjutatud erinevates programmeerimiskeeltes, nagu PHP, Python, Java jt.

See muudab need staatiliseks HTML-failiks ja edastab need kasutaja brauserisse. Kui kuulete terminit veebiserver, mõelge sellele kui serveri ja kliendi vahelise suhtluse tööriistale.

Kuidas Apache veebiserver töötab?

Kuigi Apache'i nimetatakse veebiserveriks, siis tegelikkuses pole see server, vaid programm, mis töötab serveris. Selle ülesanne on luua ühendus serveri ja külastajate brauseri (Firefox, Google Chrome, Safari jne) vahel, edastades faile nende vahel edasi-tagasi (klient-server struktuur). Apache on platvormideülene tarkvara, mis tähendab, et see töötab hästi nii Unixi kui ka Windowsi serverites.

Kui külastaja soovib laadida teie saidil mõnda lehte, näiteks teie avalehte või lehte „Meist”, saadab tema brauser teie serverile päringu ja Apache tagastab vastuse koos kõigi taotletud failidega (tekst, pilt jne). . Server ja klient suhtlevad HTTP-ga ning Apache vastutab sujuva ja turvalise ühenduse eest kahe masina vahel.

Apache on modulaarse struktuuri tõttu väga kohandatav. Moodulid võimaldavad serveriadministraatoritel lisafunktsioone lubada või keelata. Apachel on moodulid turvalisuse, vahemällu salvestamise, URL-i redigeerimise, parooli autentimise ja muu jaoks. Saate määrata oma konfiguratsiooni .htaccess-faili kaudu, mis on Apache'i seadete fail ja mida toetavad kõik Hostingeri plaanid.

Apache ja muud veebiserverid

Lisaks Apache'ile on veel palju teisi veebiservereid. Iga veebiserveri rakendus loodi erineval eesmärgil. Kuigi Apache on kõige laialdasemalt kasutatav, on alternatiive ja konkurente mitmeid.

Siin ta on – suurepärane ja kohutav. Oma eluea jooksul on see hävitanud palju algajaid veebiarendajaid, kes kaotasid oma elu selle konfiguratsioonifailide seadistamisel. 🙂 Aga sina ja mina oleme tugevate närvide ja terasest kõhuga inimesed – nii et lähme.

Esialgne paigaldamine ja seadistamine

Pakkige levitamisarhiiv lahti kataloogi C:\Apache2.

Avage tekstiredaktoris fail "C:\Apache2\conf\httpd.conf", mis on Apache serveri peamine konfiguratsioonifail.

No oota nüüd. Naistel, vanuritel ja lastel palutakse edasi mitte lugeda. Autorid ei vastuta artikli lõpuni lugenud inimeste vaimse seisundi eest. 🙂

Faili httpd.conf redigeerimine

  1. Mooduli mod_rewrite laadimiseks leidke see rida ja tühjendage see (eemaldage sümbol # rea algusest):
    LoadModule rewrite_module modules/mod_rewrite.so
  2. PHP tõlgi laadimiseks peate mooduli laadimisploki lõppu lisama rea:
    LoadModule php5_module "C:/php/php5apache2_2.dll"
  3. Määrake PHP konfiguratsioonifaili sisaldav kataloog, lisades alloleva rea:
    PHPIniDir "C:/php"
  4. Otsige rida ja tühjendage kommentaarid:
    Serverinimi www.example.com:80
    Muutke seda järgmiselt, määrates algse serveri nime:
    Serverinimi kohalik host:80
  5. Leidke rida:
    DocumentRoot "c:/Apache2/htdocs"
    Määrake juursaidi halduskataloog (loome selle veidi hiljem):
    DocumentRoot "C:/apache"
  6. Leia see plokk:

    Valikud FollowSymLinks
    AllowOverride Puudub
    Tellimus keelata, lubada
    Keeldu kõigist

    Ja asendage see järgmisega:

    Valikud Sisaldab indekseid FollowSymLinks
    AllowOverride All
    Luba kõigilt
  7. Eemaldage või kommenteerige välja algne kataloogi juhtplokk (me ei vaja seda), mis ilma kommentaarideta näeb välja umbes selline:

    Valikud Indeksid FollowSymLinks
    AllowOverride Puudub
    Telli luba, keela
    Luba kõigilt
  8. Leidke plokk:

    DirectoryIndex index.html

    Asenda see järgmisega:

    DirectoryIndex index.html index.htm index.shtml index.php
  9. Leidke rida:
    ErrorLog "logs/error.log"
    Asendage järgmisega (sel juhul on globaalse serveri veafaili vaatamine mugavam):
    ErrorLog "C:/apache/error.log"
  10. Leidke rida:
    CustomLog "logs/access.log" tavaline
    Asenda järgmisega:
    CustomLog "C:/apache/access.log" tavaline
  11. SSI (serveripoolse lubamise) kasutamiseks asuvad plokis järgmised read , peate leidma ja kommenteerima:
    AddType text/html .shtml
    AddOutputFilter SISALDAB .shtml
  12. Lisage allpool samasse plokki , kaks rida:
    AddType rakendus/x-httpd-php .php
    AddType rakendus/x-httpd-php-source .phps
  13. Lõpuks otsige üles read ja tühjendage nende kommentaarid:
    Kaasake conf/extra/httpd-mpm.conf
    Kaasake conf/extra/httpd-autoindex.conf
    Kaasake conf/extra/httpd-vhosts.conf
    Kaasake conf/extra/httpd-manual.conf
    Kaasake conf/extra/httpd-default.conf

Salvestage muudatused ja sulgege fail "httpd.conf".

Nüüd avage fail "C:\Apache2\conf\extra\httpd-vhosts.conf" ja tehke selles järgmised muudatused.

Olemasolevad virtuaalse hosti näite plokid tuleb eemaldada ja sisestada ainult järgmine:
NameVirtualHost *:80


DocumentRoot "C:/apache/localhost/www"
ServerName localhost
ErrorLog "C:/apache/localhost/error.log"
CustomLog "C:/apache/localhost/access.log" on tavaline

Salvestage muudatused ja sulgege fail "httpd-vhosts.conf".

Konfiguratsioonifailide seadistamine on lõpetatud, nüüd peate installima teenuse Apache2.2.

Teenuse Apache2.2 installimine piltidena

Käivitage käsurida ja sisestage "C:\Apache2\bin\httpd.exe -k install"

Seda peaksime nägema, kui teenus Apache2.2 on edukalt installitud.

Kui kõik läks hästi, liigume edasi - seadistame teenuse Apache2.2 käsitsi käivitamise, mille jaoks järgime teenusehalduses järgmist teed: "Start" → "Juhtpaneel" → "Haldustööriistad" → "Teenused" avanevas aknas valige rida "Apache2.2" ja topeltklõpsake sellel, seejärel valige vahekaardil "Üldine" teenuse käsitsi käivitamine - "Käivitustüüp: Käsitsi" "(Käivitustüüp: käsitsi). Seda tuleb teha selleks, et vältida tarbetute teenuste süsteemi laadimist. Arvestades, et koduarvutit ei kasutata ainult veebiarenduseks, vaid ka paljudeks muudeks vajadusteks, on kõige õigem aeg-ajalt kasutatavate teenuste käsitsi käivitamine ja peatamine.

Virtuaalse hosti kataloogi struktuuri loomine

Ketta juurosas peate looma kataloogi "apache" - see sisaldab teie virtuaalseid hoste (domeene), globaalset tõrkelogi faili "error.log" (programmi loob selle esmakordsel käivitamisel automaatselt), globaalse juurdepääsu faili "access.log" (loodud automaatselt). Kataloogis “apache” loome veel ühe tühja kausta - “localhost”, milles omakorda loome kausta “www”, just viimases peame oma asju hoidma kohalike skriptide kujul. See näiliselt kummaline kataloogistruktuur on Unixi süsteemide sarnase kataloogistruktuuri dikteeritud ning selle eesmärk on lihtsustada selle edasist mõistmist ja kasutamist.

Näide virtuaalse hosti loomisest

Kui peate installima oma virtuaalsed hostid, tehke järgmist.

Avage fail "httpd-vhosts.conf" ja looge selles umbes järgmise sisuga plokk:

# Kaust, kus asub teie hosti juur.
DocumentRoot "C:/apache/test.ru/www"
# Domeen, mille kaudu pääsete juurde virtuaalsele hostile.
Serverinimi test.ru
# Domeeni alias (lisanimi).
ServerAlias ​​www.test.ru
# Fail, kuhu vead kirjutatakse.
ErrorLog "C:/apache/test.ru/error.log"
# Hosti juurdepääsu logifail.
CustomLog "C:/apache/test.ru/access.log" on tavaline

Seejärel looge kataloogis "apache" kaust "test.ru" (just nii, punktiga), milles omakorda looge kaust "www".

Järgmine samm virtuaalse hosti loomisel on operatsioonisüsteemi faili C:\WINDOWS\system32\drivers\etc\hosts muutmine. Avage see fail ja lisage sellele kaks rida:
127.0.0.1 test.ru
127.0.0.1 www.test.ru

Nüüd käivitage Apache server, käivitades käsureal "C:\Apache2\bin\httpd.exe -k start", avage brauser, sisestage aadressiribale "test.ru" või "www.test.ru" ja leiad end oma virtuaalsest hostist. Lihtsalt olge ettevaatlik, nüüd pääsete virtuaalse hosti nimega algsele saidile ("www.test.ru", kui see on olemas) ainult kommenteerides või kustutades rea: "127.0.0.1 www.test.ru " ülalmainitud failis " hosts ".

Töötava serveriga Apache dokumentatsioon on saadaval aadressil http://localhost/manual/

Apache'i saate peatada, käivitades käsureal "C:\Apache2\bin\httpd.exe -k stop". Kui peate Apache'i taaskäivitama, käivitage käsureal "C:\Apache2\bin\httpd.exe -k restart".

Apache veebiserveri installimine ja konfigureerimine on lõpetatud.

Pakettfailide loomine teenuste käivitamiseks ja peatamiseks

Nõustuge, et faili "hosts" käsitsi redigeerimine iga kord teenuste käivitamisel pole mugav, nii et Apache'i, MySQL-i teenuste mugavamaks, samaaegseks käivitamiseks ja "hosts"-faili muutmiseks loome kaks pakkfaili: käivitamiseks ja peatumine, mis teeb kõik rutiinsed tööd automaatselt.

Virtuaalsete hostide kasutamisel tuleb kataloogi C:\apache luua kaks faili: vhosts-off.txt – mis sisaldab “hosts” faili algset sisu ja vhosts-on.txt – sisaldab kõiki virtuaalhoste. Pange tähele, et uute virtuaalsete hostide loomisel peate need lisama faili vhosts-on.txt, mitte kausta C:\WINDOWS\system32\drivers\etc\hosts. Vaadake allolevaid näiteid.

Fail vhosts-off.txt (võib sisaldada ühte rida):
127.0.0.1 localhost

Näide faili vhosts-on.txt kohta, millel on virtuaalsed hostid www.test.ru ja test.ru:

127.0.0.1 localhost
127.0.0.1 www.test.ru
127.0.0.1 test.ru

Looge samas kataloogis C:\apache kaks pakkfaili: start-webserver.bat – teenuste käivitamiseks ja faili “hosts” asendamiseks ning stop-webserver.bat – teenuste peatamiseks ja faili “hosts” tühjendamiseks.

Käivitage fail start-webserver.bat:

@kaja kajast välja. kui seda pole olemas C:\apache\vhosts-on.txt goto no_vhosts echo Virtuaalsete hostide loomine: kopeeri /v /y C:\apache\vhosts-on.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET start Apache2.2 NET start MySQL

Peata fail stop-webserver.bat:

@kaja kajast välja. kui seda pole olemas C:\apache\vhosts-off.txt goto no_vhosts echo Taasta hostide fail: kopeeri /v /y C:\apache\vhosts-off.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET stop Apache2.2 NET stop MySQL

Kui te ei kasuta virtuaalseid hoste või soovite teenuseid käivitada ilma hosts-faili asendamata, eemaldage lihtsalt failid vhosts-on.txt ja vhosts-off.txt kataloogist C:\apache.

Teenustega samaaegselt on mugav käivitada Apache Monitori programm, mis kuvab süsteemisalves Apache serveri olekut, mille jaoks saate luua teise partiifaili “start-webserver-monitor.bat”, mille sisu on sarnased failiga "start-webserver.bat", millele on lisatud järgmise rea lõpp:

käivita "" "C:\Apache2\bin\ApacheMonitor.exe"

Nüüd peate kogu tööriistakomplekti käivitamiseks käivitama faili "start-webserver-monitor.bat" või "start-webserver.bat" ja peatama selle "stop-webserver.bat". Soovi korral saate need failid ümber nimetada, teisaldada need kaustast “C:\apache” mis tahes mujale või luua nendele failidele otseteid, näiteks töölauale.

Originaalartikkel: http://php-myadmin.ru/learning/instrument-apache.html