Kuinka apache-palvelin toimii. Apache-verkkopalvelin - mikä on http Apache, mihin se on tarkoitettu, mistä ladata

Ja tänään käynnistämme Apache 2.2.2 -verkkopalvelimen ja tarkastelemme sen perusasetuksia.
Ensin tarkistetaan kuinka asennus sujui: Avaa selaimesi ja kirjoita http://localhost - Näet tervetulosivun: Se toimii! Asennus sujui siis hyvin.

Napsauta seuraavaksi tehtäväpalkin kynäkuvaketta oikealla painikkeella hiirellä ja valitse "Avaa palvelut". Valitse avautuvasta palvelunhallintaikkunasta rivi "Apache2.2" ja kaksoisnapsauta sitä, minkä jälkeen "Yleiset"-välilehdellä valitse palvelun manuaalinen käynnistys - "Käynnistystyyppi: Manuaalinen" ("Käynnistystyyppi: manuaalisesti"). Tämä on tehtävä, jotta tarpeettomat palvelut eivät kuormita järjestelmää. Olettaen että kotitietokone Käytetään paitsi web-kehitykseen, myös moniin muihin tarpeisiin, ajoittain käytettävien palvelujen manuaalinen käynnistäminen ja pysäyttäminen on hyväksyttävintä.

Aseman C juureen: sinun on luotava "apache"-hakemisto - se sisältää virtuaaliset isännäsi (verkkotunnukset), globaalin virhelokitiedoston "error.log" (ohjelman luoma ensimmäisellä käynnistyksellä automaattisesti), globaali pääsytiedosto "access.log" (luodaan automaattisesti). "Apache"-hakemistoon luomme toisen tyhjän kansion - "localhost", johon puolestaan ​​luomme "www"-kansion, jälkimmäisessä tarvitsemme sivustomme projektin paikallisten komentosarjojen muodossa. Tällainen näennäisesti oudolta vaikuttava hakemistorakenne sanelee samankaltainen hakemistorakenne Unix-järjestelmissä, ja se on suunniteltu helpottamaan sen ymmärtämistä ja käyttöä tulevaisuudessa.

Muokkaa httpd.conf-tiedostoa
1. Lataa mod_rewrite-moduuli etsimällä ja poistamalla kommentit (poista "#"-symboli rivin alusta) tämä rivi:

LoadModule rewrite_module modules/mod_rewrite.so


2. Sillä PHP lataukset tulkki, lisää seuraava rivi moduulin latauslohkon loppuun:

#LoadModule php5_module "C:/php/php5apache2_2.dll"


3. Määritä kokoonpanon sisältävä hakemisto PHP-tiedosto lisäämällä alla oleva rivi:

#PHPIniDir "C:/php"


poista kommentti php:n asennuksen jälkeen

4. Etsi rivi:

DocumentRoot "C:/server/htdocs"

Nimittää juurihakemisto sivuston hallinta (hieman aikaisemmin loit sen):

DocumentRoot "c:/apache"

5. Etsi tämä lohko:


Asetukset FollowSymLinks
SalliOverride Ei mitään
Tilaus hylätään, sallitaan
Kiellä kaikilta


Ja korvaa se seuraavalla:


Valinnat Sisältää Indeksit FollowSymLinks
SalliOverride All
Salli kaikilta

6. Poista tai kommentoi alkuperäinen hakemiston ohjauslohko (emme tarvitse sitä), joka ilman kommentteja näyttää suunnilleen tältä:


#
# Optiodirektiivin mahdolliset arvot ovat "Ei mitään", "Kaikki",
# tai mikä tahansa yhdistelmä seuraavista:
# Indeksit sisältävät FollowSymLinkit SymLinksifOwnerMatch ExecCGI MultiViews
#
# Huomaa, että "MultiViews" on nimettävä *nimellisesti* --- "Options All"
# ei anna sitä sinulle.
#
# Optio-direktiivi on sekä monimutkainen että tärkeä. Ole hyvä ja katso
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# Lisätietoja.
#
Asetukset Indeksit FollowSymLinks

#
# AllowOverride määrittää, mitä ohjeita .htaccess-tiedostoihin voidaan sijoittaa.
# Se voi olla "Kaikki", "Ei mitään" tai mikä tahansa avainsanojen yhdistelmä:
# Asetukset FileInfo AuthConfig Limit
#
SalliOverride Ei mitään

#
# Hallitsee, kuka voi saada tavaraa tältä palvelimelta.
#
käske sallia, kieltää
Salli kaikilta

7. Etsi lohko:


DirectoryIndex index.html

Korvaa se seuraavalla:


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

8. Etsi rivi:

ErrorLog "logs/error.log"


Korvaa seuraavalla (tässä tapauksessa yleisen palvelimen virhetiedoston katselu on helpompaa):

ErrorLog "C:/apache/error.log"

9. Etsi rivi:

CustomLog "logs/access.log" yleinen


Vaihda muotoon:

CustomLog "C:/apache/access.log" yleinen

10. SSI-käyttöä varten (palvelinpuolen aktivointi) seuraavat rivit, joka sijaitsee lohkossa, täytyy löytää ja jättää kommentoimatta:

AddType text/html .shtml
AddOutputFilter INCLUDES.shtml

11. Lisää alle samaan lohkoon kaksi riviä:

AddType-sovellus/x-httpd-php .php
AddType-sovellus/x-httpd-php-source .phps

12. Lopuksi etsi rivit ja poista niiden kommentit:

Sisällytä conf/extra/httpd-mpm.conf
Sisällytä conf/extra/httpd-autoindex.conf
Sisällytä conf/extra/httpd-vhosts.conf
Sisällytä conf/extra/httpd-manual.conf
Sisällytä conf/extra/httpd-default.conf

Tallenna muutokset ja sulje "httpd.conf"-tiedosto

Avaa nyt tiedosto "C:\server\conf\extra\httpd-vhosts.conf" ja tee siihen seuraavat muutokset.

Olemassa olevat virtuaalisen isäntäesimerkkilohkot on poistettava ja vain seuraavat lisättävä:

NameVirtualHost *:80


DocumentRoot "C:/apache/localhost/www"
palvelimen nimi localhost
ErrorLog "C:/apache/localhost/error.log"
CustomLog "C:/apache/localhost/access.log" yleinen

Tallenna muutokset ja sulje "httpd-vhosts.conf"-tiedosto

Jatkaminen - asetamme Apache2.2-palvelun manuaalisen käynnistyksen, jota varten käymme läpi polun: "Aloita" ("Aloita") → " Ohjauspaneeli" ("Ohjauspaneeli") → "Hallintatyökalut" ("Hallinta") → "Palvelut" ("Palvelut"), valitse avautuvasta palvelunhallintaikkunasta rivi "Apache2.2" ja kaksoisnapsauta sitä, minkä jälkeen "Yleiset" ("Yleiset") -välilehdellä valitse palvelun manuaalinen käynnistys - "Tämä on aloitettava" -tyyppi: "Tämä on tehtävä":"tyyppi: "Tämä aloitetaan":"tyyppi: "Manual":" cessary-palvelut eivät kuormita järjestelmää.Kotitietokonetta ei käytetä pelkästään web-kehitykseen, vaan moneen muuhun tarpeeseen, ajoittain käytettävien palvelujen manuaalinen käynnistäminen ja pysäyttäminen on hyväksyttävintä.

Esimerkki virtuaalisen isännän luomisesta

Jos sinun on määritettävä omat virtuaalipalvelimesi, toimi seuraavasti:

Avaa "httpd-vhosts.conf"-tiedosto ja luo siihen lohko, joka näyttää suunnilleen tältä:

# Kansio, jossa isäntäsi juuri on.
DocumentRoot "C:/apache/dom.ru/www"
# Verkkotunnus, jolla voit käyttää virtuaalipalvelinta.
Palvelimen nimi dom.ru
# Verkkotunnuksen alias (lisänimi).
ServerAlias ​​www.dom.ru
# Tiedosto, johon virheet kirjoitetaan.
ErrorLog "C:/apache/dom.ru/error.log"
# Isäntäkäyttölokitiedosto.
CustomLog "C:/apache/dom.ru/access.log" yleinen

Luo sitten "apache"-hakemistoon "dom.ru"-kansio, johon puolestaan ​​luo "www"-kansio.
Seuraava vaihe virtuaalisen isännän luomisessa on muokata käyttöjärjestelmän C:\WINDOWS\system32\drivers\etc\hosts-tiedostoa. Avata annettu tiedosto ja lisää siihen kaksi riviä:
127.0.0.1 dom.ru
127.0.0.1 www.dom.ru
Käynnistä nyt Apache-palvelin uudelleen, avaa selain ja kirjoita osoitekenttä"dom.ru" tai "www.dom.ru" ja löydät itsesi virtuaalipalvelimeltasi. Ole vain varovainen, nyt pääset alkuperäiselle sivustolle virtuaalipalvelimen nimellä ("www.dom.ru", jos sellainen on), vain kommentoimalla tai poistamalla rivi: "127.0.0.1 www.dom.ru" yllä olevasta "hosts"-tiedostosta.
Apache-dokumentaatio käynnissä oleva palvelin, saatavilla osoitteessa http://localhost/manual/
Apache-verkkopalvelimen asennus ja määritys on valmis.

Tässä osiossa käsittelemme miten apache http-palvelin toimii. Aloitamme tietysti asentamalla Apachen Windowsiin. On huomattava, että useimmat isännät käyttävät Apachea verkkopalvelimena, joten jokaisen verkkovastaavan on tiedettävä tämän palvelimen kanssa työskentelyn perusteet.

Tässä viestissä selvitämme, miksi web-palvelinta ylipäänsä tarvitaan, sitten puhumme joistakin Apache-palvelimen ominaisuuksista ja asennamme sen Windows-tietokoneeseen, ja lopuksi tarkastellaan virheitä, joita voi ilmetä, kun Apachen asentaminen Windows 7:ssä ja uudemmissa.

Mikä Apache-verkkopalvelin on ja mihin se on tarkoitettu?

Tiedämme, että vuorovaikutus Internetissä voidaan kuvata täysin vertailumallilla. Verkkokehittäjälle eniten kiinnostavat protokollat ​​ja tekniikat, jotka ovat vertailumallin kuudennen ja seitsemännen tason tasolla. Kaikista seitsemännen tason protokollista meitä kiinnostaa eniten, joka perustuu asiakas-palvelin-arkkitehtuuriin.

Teimme sen seuraavasti: C-aseman juureen loimme Server-kansion, jonka sisään loimme vielä neljä kansiota: apache, tmp, www, log, php. Kaikkia kansioita ei käytetä tässä oppaassa. Kaikki tämä näkyy alla olevassa kuvassa.

Loimme www-kansioon yksinkertaisen Index.html-nimisen, jossa on seuraava sisältö:

Kassasivu

Apache toiminnassa



< ! DOCTYPE html >

< html lang = "ru-RU" >

< head >

< meta charset = "UTF-8" >

< title >Kassasivu< / title >

< link rel = "stylesheet" type = "text/css" href = "style.css" / >

< / head >

< body >

< h1 >Apache toiminnassa< / h1 >

< / body >

< / html >

Tässä asiakirjassa on vain yksi, ja jos voimme avata sen, kun Apache-verkkopalvelimen asennus on valmis, olemme tehneet kaiken oikein. varten lisäasennus tarvitsemme web-palvelimen.

Apache on suosituin ilmainen web-palvelin. Vuodesta 2016 lähtien sitä käyttää 33 % kaikista Internet-sivustoista, mikä on noin 304 miljardia sivustoa. Tämä web-palvelin kehitettiin vuonna 1995 korvaamaan suosittu NCSA-palvelin, ja se korjasi monet sen ongelmista. Huhutaan, että hänen nimensä tulee hajanaisuudesta, koska hän korjasi NCSA-virheet. Nyt se on monialustainen ohjelma, joka tukee Windowsia, Linuxia ja MacOS:ää ja tarjoaa riittävästi joustavuutta, mukauttamista ja toimivuutta. Ohjelmassa on modulaarinen rakenne, jonka avulla voit laajentaa sen toimintoja lähes loputtomiin moduulien avulla.

Apachen asentaminen Linuxiin voidaan tehdä muutamalla komennolla, mutta ohjelma tarjoaa erittäin suuri määrä asetukset, joita voidaan muuttaa, sekä moduulit, joiden käyttöönoton jälkeen se toimii paremmin. Tämä artikkeli kattaa Apachen asennuksen ja määrityksen, käytämme Ubuntua pääjärjestelmänä, mutta voit toistaa nämä vaiheet missä tahansa muussa jakelussa. Ei vain harkita itse ohjelman asennusta, vaan myös tapoja määrittää se, määrittää apache-virtuaaliisännät sekä hyödyllisimmät moduulit.

Päällä Tämä hetki, eniten uusi versio Ohjelma 2.4, joten apache 2.4:n kokoonpano otetaan huomioon. Kuten sanoin, Linuxissa ohjelma asennetaan vain muutamalla komennolla. Asentaaksesi Ubuntuun, päivitä ensin järjestelmä uusimpaan versioon:

sudo apt päivitys
$ sudo apt päivitys

Asenna sitten apache2:

sudo apt install apache2

Muissa jakeluissa ohjelmapaketin nimi on joko tämä tai httpd, eikä sinulla ole vaikeuksia asentaa se.

Kun asennus on valmis, sinun on lisättävä verkkopalvelin käynnistykseen, jotta se ei käynnisty manuaalisesti tietokoneen käynnistämisen jälkeen:

sudo systemctl enable apache2

Apachen asetukset

Aika on kulunut, kun Apache-kokoonpano tallennettu yhteen tiedostoon. Mutta se on oikein, kun kaikki on jaettu sen hakemistoihin, on helpompi navigoida asetustiedostoissa.

Kaikki asetukset ovat /etc/apache/-kansiossa:

  • Tiedosto /etc/apache2/apache2.conf vastaa perusasetuksista
  • /etc/apache2/conf-available/* - Lisäasetukset verkkopalvelin
  • /etc/apache2/mods-available/*- moduuliasetukset
  • /etc/apache2/sites-available/*- virtuaalisen isännän asetukset
  • /etc/apache2/ports.conf- portit, joissa apache on käynnissä
  • /etc/apache2/envvars

Kuten näet, on kaksi kansiota confille, modeille ja sivustolle. Nämä ovat saatavilla ja käytössä. Kun moduuli tai isäntä on käytössä, se luo symbolinen linkki käytettävissä olevasta kansiosta käyttöönottokansioon. Siksi on parempi tehdä asetukset käytettävissä oleviin kansioihin. Yleisesti ottaen voisi olla ilman näitä kansioita, ottaa kaikki ja upottaa se yhdeksi tiedostoksi vanhanaikaisesti, ja kaikki toimisi, mutta nyt kukaan ei tee sitä.

Ensin katsotaan päätiedosto kokoonpanot:

vi /eta/apache2/apache2.conf

Aikalisä- ilmaisee, kuinka kauan palvelin yrittää jatkaa keskeytettyä tiedonsiirtoa tai vastaanottoa. 160 sekuntia riittää.

Pysy hengissä- Hyvin hyödyllinen parametri, voit siirtää useita tiedostoja yhdelle yhteydelle, esimerkiksi itse html-sivun lisäksi myös kuvia ja css-tiedostoja.

MaxKeepAliveRequests 100 - enimmäismäärä pyyntöjä yhteyttä kohti, mitä enemmän, sen parempi.

KeepAliveTimeout 5- yhteyden aikakatkaisu, yleensä 5-10 sekuntia riittää sivun lataamiseen, joten sinun ei tarvitse asettaa enempää, mutta sinun ei tarvitse myöskään katkaista yhteyttä ennen kuin kaikki tiedot on ladattu.

käyttäjäryhmä- käyttäjä ja ryhmä, jonka puolesta ohjelma ajetaan.

Isäntänimihaut- Kirjoita lokeihin IP-osoitteiden sijaan domain-nimet, on parempi poistaa käytöstä työn nopeuttamiseksi.

LogLevel- virheiden kirjaamistaso. Oletuksena käytetään varoitusta, mutta jos haluat lokit täyttyä hitaammin, ota vain virhe käyttöön

Sisältää- Kaikki sisällyttävät direktiivit ovat vastuussa yllä käsiteltyjen asetustiedostojen sisällyttämisestä.

Hakemistokäskyt ovat vastuussa tietyn hakemiston käyttöoikeuksien asettamisesta tiedostojärjestelmä. Syntaksi tässä on:


Parametrin arvo

Tässä ovat tärkeimmät käytettävissä olevat vaihtoehdot:

salli ohitus- määrittää, luetaanko tästä hakemistosta .htaccess-tiedostoja. Nämä ovat samat asetustiedostot ja sama syntaksi. Kaikki - salli kaikki, ei mitään - älä lue näitä tiedostoja.

DocumentRoot- määrittää, mistä kansiosta sinun on otettava asiakirjat näytettäväksi käyttäjälle

Vaihtoehdot- Määrittää, mitkä verkkopalvelimen ominaisuudet sallitaan tässä kansiossa. Esimerkiksi Kaikki - salli kaikki, FollowSymLinks - seuraa symbolisia linkkejä, Indeksit - näyttää hakemiston sisällön, jos hakemistotiedostoa ei ole.

Vaatia- määrittää, millä käyttäjillä on pääsy tähän hakemistoon. Vaadi kaikki kielletty - kiellä kaikki, Vaadi kaikki myönnetty - salli kaikki. voit käyttää käyttäjä- tai ryhmäkäskyä kaikkien asemesta käyttäjän nimenomaiseen määrittämiseen.

Tilaus- voit hallita pääsyä hakemistoon. Se vaatii kaksi arvoa: Salli, Kieltä - salli kaikille paitsi määritetyille tai Estä,Salli - estä kaikille paitsi määritetyille..ru.

Tässä ei käytetä kaikkia näitä direktiivejä, koska olemme tyytyväisiä oletusarvoihin, mutta .htaccess-tiedostoissa ne voivat olla erittäin hyödyllisiä.

Jäljelle jää /etc/apache2/ports.conf-tiedosto:

Siinä on vain yksi käsky, Listen, joka kertoo ohjelmalle, missä portissa sen tulee toimia.

Viimeinen tiedosto on /etc/apache2/envvars, jota et todennäköisesti käytä, se sisältää muuttujia, joita voidaan käyttää muissa asetustiedostoissa.

Apache-palvelimen asennus htaccessin kautta

.htaccess-tiedostojen avulla voit määrittää Ubuntun verkkopalvelimen toimimaan tietyssä hakemistossa. Kaikki tässä tiedostossa määritetyt ohjeet suoritetaan ikään kuin ne olisi kääritty tunnisteeseen jos ne olivat päätiedostossa.

On tärkeää huomata, että jotta palvelin voisi lukea ohjeita .htaccess-tiedostosta, tämän kansion asetukset päätiedostossa tai virtuaalisessa isäntätiedostossa eivät saa sisältää SalliOverride Ei mitään jotta kaikki asetukset voivat toimia, tarvitset SalliOverride All.

Muuten täällä voidaan tehdä mikä tahansa apache-palvelimen konfiguraatio moduulien käyttöönotosta yksinkertaisesti kansion käyttöoikeuden vaihtamiseen. Koska olemme jo tarkastelleet kaikkia parametreja, annamme vain muutaman esimerkin:

Tilaa Estä, Salli
Kiellä kaikilta

Estää kaikilta pääsyn tähän kansioon, on tärkeää hakea asetuskansioita. Useimmiten .htaccess-tiedostoa käytetään mod_rewrite-moduulin kanssa, jonka avulla voit muuttaa pyyntöjä lennossa:

Kirjoita moottori uudelleen päälle
RewriteRule ^product/([^/\.]+)/?$ product.php?id=$1 [L]

Mutta tämä on erittäin laaja aihe ja ylittää tämän artikkelin.

Apache-moduulien määrittäminen

Kuten sanoin, Apache on modulaarinen ohjelma, sen toimintoja voidaan laajentaa moduuleilla. Kaikki käytettävissä olevat moduulilataajat ja moduulien määritystiedostot sijaitsevat /etc/apache/mods-available-kansiossa. Ja ne, jotka on otettu käyttöön tiedostossa /etc/apache/mods-enable.

Mutta sinun ei tarvitse jäsentää näiden kansioiden sisältöä. Apache 2.4:n asentaminen lisäämällä moduuleja tehdään erikoiskomennoilla. näytä kaikki käynnissä olevat moduulit voidaan tehdä komennolla:

Voit ottaa moduulin käyttöön komennolla:

sudo a2enmod moduulin_nimi

Ja poista käytöstä:

sudo a2dismod moduulin_nimi

Kun olet ottanut moduulit käyttöön tai poistanut ne käytöstä, sinun on käynnistettävä apache uudelleen:

sudo systemctl käynnistä apache2 uudelleen

Yhtä näistä komennoista suoritettaessa luodaan tai poistetaan symbolinen linkki moduulitiedostoon, jonka laajennus ladataan mods-available-hakemistoon. Näet tämän tiedoston sisällön, siinä on vain yksi rivi. Esimerkiksi:

vi /etc/apache2/mods-available/deflate.load

Tämä tarkoittaa, että moduuli voidaan aktivoida yksinkertaisesti lisäämällä tämä rivi apache2.conf-tiedostoon. Mutta on tapana tehdä juuri niin sekaannusten välttämiseksi.

Moduulin asetukset ovat samassa kansiossa, vain tiedostossa, jossa on .conf-tunniste latauksen sijaan. Katsotaanpa esimerkiksi saman moduulin asetukset deflatoitua pakkausta varten:

vi /etc/apache2/mods-available/deflate.conf

Tiedostot conf-available-kansiossa, nämä ovat samoja moduuleja, vain ne asennetaan erikseen apachesta, nämä voivat olla konfiguraatiotiedostoja php-moduuli tai mikä tahansa muu ohjelmointikieli. Kaikki toimii täällä täsmälleen samalla tavalla, vain komennot näiden moduulien käyttöönottamiseksi ja poistamiseksi käytöstä ovat hieman erilaisia:

a2enconf moduulin_nimi

a2disconf-moduulin nimi

Kuten olet nähnyt, moduulien käyttöönotto on erittäin helppoa. Otetaan käyttöön muutama pakollinen, mutta ei oletusarvoisesti käytössä oleva moduuli:

sudo a2enmod vanhenee
$ sudo a2enmod otsikot
$ sudo a2enmod uudelleenkirjoitus
$ sudo a2enmod ssl

Vanhenemis- ja otsikkomoduulit vähentävät palvelimen kuormitusta. Ne palauttavat Not Modified -otsikon, jos asiakirja ei ole muuttunut sen jälkeen viimeinen pyyntö. Vanhenemismoduulissa voit asettaa ajan, jonka selaimen tulee tallentaa vastaanotettu asiakirja välimuistiin. Rewrite antaa sinun muuttaa pyydettyjä osoitteita lennossa, erittäin hyödyllinen CNC-linkkien luomisessa jne. Ja viimeinen on SSL-salauksen tuen mahdollistamiseksi. Älä unohda käynnistää apache2 uudelleen asetusten tekemisen jälkeen.

Apache-virtuaaliisäntien määrittäminen

Se ei olisi kovin kätevää, jos yksi fyysinen kone Voit isännöidä vain yhtä sivustoa. Apache voi tukea satoja sivustoja yhdellä koneella ja tarjota jokaiselle oikeaa sisältöä. Tätä varten käytetään virtuaalisia isäntiä. Palvelin määrittää mihin toimialueeseen pyyntö tulee ja antaa tarvittavan sisällön tämän toimialueen kansiosta.

asetukset Apache isännöi sijaitsee /etc/apache2/hosts-available/-kansiossa. Uuden isännän luomiseksi riittää, että luot minkä tahansa nimisen tiedoston (parempi viimeistely isäntänimellä) ja täytät sen tarvittavilla tiedoilla. Kääri kaikki nämä parametrit direktiiviin virtualhost. Tässä käsiteltyjen parametrien lisäksi käytetään seuraavia:

  • Palvelimen nimi- ensisijainen verkkotunnus
  • Palvelimen alias- lisänimi, jolla sivusto on käytettävissä
  • ServerAdmin- ylläpitäjän sähköpostiosoite
  • DocumentRoot- kansio tämän verkkotunnuksen asiakirjoilla

Esimerkiksi:

vi /etc/apache2/sites-available/test.site.conf

Tämä materiaali on kirjoitettu erityisesti ihmisille, jotka ovat juuri liittymässä hoikkiin verkkokehittäjien joukkoon tai haluavat vain ymmärtää joitain prosessin monimutkaisuuksia. Täältä opit, mikä Apache-palvelin on, mihin sitä voidaan käyttää, mistä sen saa ja miten sitä käytetään oikein. Seuraavassa yritämme kuvata mahdollisimman hienosti Apachen asetukset ja hänen toiminnallisia ominaisuuksia jotta ammattilaisetkin löytävät näistä materiaaleista jotain uutta.

Jotta sivusto voi näkyä Internetissä, sen on oltava isännöivällä tai omalla isännöintipalvelimella, yhdistetty Internetiin ja sillä on oltava oma IP-osoite. Palvelin on tietokone, jolla on erityinen ohjelmisto, jota kutsutaan myös "verkkopalvelimeksi".

Maailmassa on valtava määrä web-palvelimia. Ne eroavat toisistaan ​​toiminnallisuudeltaan ja tarkoitukseltaan. Tänään puhumme niistä suosituimmista, jotka on asennettu useimpiin hosting-palvelujen tarjoajien palvelimiin. Apache-palvelin täyttää lähes kaikki tarpeet moderni web-kehitys, mutta samalla se on tarpeeksi yksinkertaista, että ohjelmoijat asentavat sen ohjelmiensa virheenkorjaukseen.

Vuonna 1994 Illinoisin yliopiston (NCSA) National Center for Supercomputing Applications -keskuksen työntekijä Rob McCool julkaisi ensimmäisen verkkopalvelimen, jota kutsuttiin NCSA HTTP-daemoniksi. Palvelin saavutti suosiota kapeissa piireissä, mutta vuoden 1994 puolivälissä McCool jätti yliopiston ja kehitys pysähtyi.

Pieni ryhmä kiinnostuneita verkkovastaavia aloitti yhteistä työtä tuotteen päälle. Chat keskustelulistalla sähköposti, he kehittivät "korjauksia" ja innovaatioita palvelimelle. He loivat Apache-ryhmän, joka kehitti ensimmäisen version Apache-palvelimesta. Se tapahtui huhtikuussa 1995, jolloin kaikki olemassa olevat "korjaukset" laitettiin tukikohtaan (NCSA Server 1.3). Näin ilmestyi ensimmäinen virallinen julkinen Apache 0.6.2 -julkaisu.

Apachen ensimmäinen julkinen versio ilmestyi huhtikuussa 1995, ja versio 1.0 julkaistiin joulukuussa.

Työ palvelimella ei pysähtynyt päivääkään, ja pian siitä tuli yksi suosituimmista. Lukuisten testien jälkeen versio 1.0 ilmestyi 1. joulukuuta 1995, vakaa ja luotettava. Kaikki nämä vuodet ja tähän päivään asti Apache on pysynyt täysin vapaana. Ehkä tämä määritti myös palvelimen menestyksen, koska NetCraftin mukaan Apache on tällä hetkellä asennettuna 67%:iin maailman kaikista palvelimista.

Apache-palvelin on nyt asennettu 67 prosenttiin palvelimista maailmanlaajuisesti. Tällä hetkellä kehitteillä on kaksi haaraa.

Tällä hetkellä kahta Apachen haaraa kehitetään rinnakkain - versioita 2.0 ja 1.3. Toinen versio on kokenut huomattavan määrän muutoksia, jotka vaikuttivat ensisijaisesti ohjelman ytimeen ja joihinkin tärkeitä moduuleja. Koska kolmansien osapuolten versiolle 1.3 kirjoittamat moduulit eivät toimi versiossa 2.0, myös "vanha" Apache on tuettu. Jos kuitenkin aiot asentaa Apachen ensimmäistä kertaa, sinun tulee katsoa tarkemmin uutta versiota.

Apache on täysin varusteltu, laajennettava avoimen lähdekoodin verkkopalvelin.

Joten mikä on Apache? Se on täysin varusteltu, laajennettava verkkopalvelin, joka tukee täysin HTTP/1.1-protokollaa ja on avoimen lähdekoodin. Palvelin voi toimia lähes kaikilla yleisillä alustoilla. Palvelimen suoritettavia tiedostoja on saatavana Windows NT:lle, Windows 9x:lle, OS/2:lle, Netware 5.x:lle ja useille UNIX-järjestelmille. Se on myös erittäin helppo asentaa ja konfiguroida. Voit varmistaa tämän hieman myöhemmin.

Apache on määritetty käyttämällä tekstipohjaisia ​​määritystiedostoja. Pääparametrit on jo määritetty "oletuksena" ja ne toimivat useimmissa tapauksissa. Jos sinulta puuttuu tavallisen "Apachen" toiminnallisuus, sinun tulee tarkastella lähemmin Apache Groupin ja kolmansien osapuolien kehittäjien kirjoittamia jaettavia moduuleja. Tärkeä etu on, että tekijät kommunikoivat aktiivisesti käyttäjien kanssa ja vastaavat kaikkiin virheilmoituksiin.

Eniten yksinkertainen toiminto, jonka Apache voi tehdä - seiso palvelimella ja palvele normaalia HTML-sivustoa. Kun tiettyä sivua koskeva pyyntö vastaanotetaan, palvelin lähettää vastauksen kyseisellä sivulla olevalle selaimelle. Kirjoitat osoitteen, sivu avautuu - kaikki on yksinkertaista.

Apache-palvelimen avulla voit suorittaa yksinkertaisen todennuksen

Toiminto on monimutkaisempi, joka on upotettu HTTP / 1.1 -protokollaan - käyttäjän todennus. Voit rajoittaa pääsyä Apache-palvelimen vakiotyökaluilla tietyt sivut sivusto eri käyttäjiä. Tämä on tarpeen esimerkiksi hallinnollisen käyttöliittymän tekemiseksi sivustolle. Tätä varten käytetään .htaccess- ja .htpasswd-tiedostoja sekä mod_auth- ja mod_access-moduuleja. Käyttäjät voidaan jakaa ryhmiin ja jokaiselle heistä voidaan määrittää omat käyttöoikeudet.

Apache-palvelin tukee SSI-tekniikkaa

Sivuston suunnittelun ja toiminnallisen osan erottamiseksi sekä staattisten kohteiden muuttamisen yksinkertaistamiseksi on olemassa SSI-tekniikka. Sen avulla voit laittaa kaikki toistuvat tiedot yhteen tiedostoon (esim. top.inc) ja sitten linkittää siihen sivuillasi. Sitten, jos sinun on muutettava useita näiden tietojen rivejä, sinun tarvitsee muuttaa ne vain yhdessä tiedostossa. Apache-palvelin tukee tätä tekniikkaa ja antaa sinun käyttää palvelinpuolen sisällytyksiä täysimääräisesti.

Apache-palvelimella voit luoda mukautettuja hakemistoja verkkosivustoille

Jos samalla palvelimella asennettuna käyttöjärjestelmä Unix-perheet ja Apache-palvelimella on useita käyttäjiä, niin jokainen voi luoda erillisen hakemiston. Tarkemmin sanottuna se luodaan automaattisesti yhdessä aliaksen kanssa. Tämä tehdään mod_userdir-moduulin ja UserDir-direktiivin avulla. Joten voit esimerkiksi kansioida public_html-tiedoston kotikansio käyttäjä vastaa osoitetta www.site.ru/~user. Yleensä tämä tehdään useimpien ilmaista isännöintiä tarjoavien sivustojen palvelimilla. Palvelimen järjestelmänvalvoja voi ottaa käyttöön tai poistaa käytöstä tietyt käyttäjät luoda kotisivuja, käyttää SSI:tä ja muita palvelintoimintoja. Täysimittainen isännöinti mahdollistaa yleensä erillisen virtuaalipalvelimen luomisen jokaiselle käyttäjälle.

Voit määrittää virtuaalisia isäntiä. Niiden ansiosta yksi fyysinen palvelin voi sisältää useita virtuaalisia

Apache-palvelin oli yksi ensimmäisistä tukipalvelimista virtuaalisia palvelimia(isännät). Tämän ominaisuuden avulla voit isännöidä useita täysimittaisia ​​sivustoja yhdellä fyysisellä palvelimella. Jokaisella niistä voi olla oma verkkotunnus, järjestelmänvalvoja, IP-osoite ja niin edelleen.

Jos haluat isännöidä domain.ru- ja domain.com-verkkotunnuksia palvelimellasi, sinun on ensin varmistettava, että DNS-järjestelmä ne on yhdistetty IP-osoitteeseesi. Sen jälkeen asetuksissa Apache-tiedosto luoda kaksi direktiiviä , jossa kuvailet jokaista virtuaalipalvelinta. Siten palvelin tietää, mihin kansioon saapuva pyyntö "lähettää".

Apache tukee PHP:tä, CGI:tä ja muita skriptejä

Tällä hetkellä useimmat Internet-sivut ovat dynaamisia. Tämä tarkoittaa, että heidän ulkomuoto ja sisältö muodostetaan jollakin "kielistä" kirjoitetulla ohjelmistolla (niitä ei voida täysin kutsua kieliksi, määritelmä on melko mielivaltainen). Tällä hetkellä eniten käytetyt tekniikat ovat CGI ja PHP. Tietenkin Apache tukee molempia, sekä mahdollisuus sisällyttää muita kieliä.

Moduulin mod_cgi avulla voit isännöidä CGI-skriptejä palvelimella. Yleensä nämä ovat vain suoritettavia tiedostoja, jotka on kirjoitettu jollakin hyväksytyistä ohjelmointikielistä. Ne voivat olla sekä käännetyssä muodossa (esimerkiksi he tekevät tämän, jos he kirjoittavat CGI:n C ++:lla) että muodossa lähdekoodi(Jos palvelimelle on asennettu Perl, niin ohjelmoija voi myös sijoittaa tällaisia ​​tiedostoja. Joskus niiden pääte on .pl).

Mitä tulee PHP:hen, mahdollisuuden integroida se Apacheen tarjoavat itse PHP:n kehittäjät. Apache sen sijaan toimii vain välittäjänä komentosarjan ja kääntäjän välillä. On kaksi tapaa integroida PHP Apacheen. Ensimmäinen on erityisen moduulin asentaminen, joka laajentaa palvelimen ominaisuuksia, ja sitten se itse pystyy "kääntämään" komentosarjoja. Ja toinen on linkkien asettaminen php-tiedostojen ja itse kääntäjän välille asetustiedostoissa (se sijaitsee levyllä .cgi- tai .exe-tiedostoina).

Apachen uusimmassa versiossa on moduuli, joka toimii vahvalla SSL/TSL-salauksella

Apache-palvelimen perusteella voit luoda yksinkertaisten amatöörisivustojen lisäksi myös vakavasti vaativia resursseja kryptografinen suojaus lähetetyt tiedot. SSL/TLS-protokolla on kehitetty erityisesti tätä tarkoitusta varten ja sen tuki on rakennettu Apache 2.0:aan. Erikoismoduulin avulla voit suorittaa todennuksen nimettyjen varmenteiden perusteella, mikä mahdollistaa käyttäjän aitouden lähes varmasti takaamisen.

Apache johtaa yksityiskohtaiset protokollat kaikki mitä palvelimella tapahtuu

Ja tietysti Apache-palvelin voi pitää lokia kaikista sen kanssa tehdyistä toimista. Lisäksi järjestelmänvalvoja voi valita protokollan yksityiskohtaisuuden tason. Lokeja ylläpidetään erikseen virheiden, onnistuneiden toimintojen ja kunkin virtuaalisen isännän varalta. Sanassa, täysi setti syntyvien virheiden perusteellista analyysiä varten.

Yhden materiaalin puitteissa emme vain pystyneet kertomaan yksityiskohtaisesti kaikista Apache-palvelimen ominaisuuksista, vaan yksinkertaisesti luettelemaan niitä. Tämän artikkelin oli tarkoitus olla ensimmäinen pintapuolinen käyttäjien ja tulevien kehittäjien esittely Apache-palvelimesta. Muissa materiaaleissa käsittelemme ehdottomasti kaikkia sivuston rakentamisen hienouksia tämän upean ohjelmistopaketin perusteella.

Apache HTTP-palvelin on monikäyttöinen avoimen lähdekoodin verkkopalvelin. Huhtikuusta 1996 lähtien se on ollut Internetin suosituin HTTP-palvelin; elokuussa 2007 se oli käynnissä 51 prosentissa kaikista web-palvelimista. Apachen tärkeimmät edut ovat luotettavuus ja konfiguroinnin joustavuus. Virallinen sivusto: httpd.apache.org.

Palvelin kirjoitettiin alkuvuodesta 1995 ja sen nimen uskotaan juontavan sarjakuvanimestä "a patchy" (englanniksi "patch"), koska se korjasi tuolloin suositun palvelimen virheet maailman laajuinen verkko NCSA HTTPd 1.3. Myöhemmin versiosta 2.x lähtien palvelin kirjoitettiin uudelleen, ja nyt se ei sisällä NCSA-koodia, mutta nimi säilyy. Tällä hetkellä kehitystyötä tehdään 2.2-haarassa ja versioissa 1.3 ja 2.0 tehdään vain tietoturvakorjauksia.

Apache-verkkopalvelinta kehittää ja ylläpitää avoin kehittäjäyhteisö Apache Software Foundationin alaisuudessa, ja se sisältyy moniin ohjelmistotuotteisiin.

Miksi sinun on ehkä asennettava verkkopalvelin tietokoneellesi? Tässä on kaksi vaihtoehtoa: a) Jos sinulla on pääsy Internetiin, voit luoda ja korjata ne paikallisella tietokoneellasi ennen kuin lataat sivustosi sivut oikealle palvelimelle. b) jos sinulla ei ole Internet-yhteyttä, mutta luokassa on lähiverkko, voit asentaa palvelimen ja käyttää sitä opetustarkoituksiin.

1. Verkkoprojektien erottaminen kaikista muista, kaikista ohjelmistoista, html-sivuista, skripteistä jne. Tässä esimerkissä asennamme erilliseen hakemistoon C:\Omat palvelimet. Luo hakemisto tähän hakemistoon usr varten tarvittavat ohjelmat Ja Koti sivuston säilytykseen. Voit valita hakemistoille toisen nimen ja sijainnin.

2. Asennamme Apache 2.2.8:n uusimman version. Ensin sinun on ladattava jakelun uusin versio Apachen asentamista varten. Osoitteessa http://httpd.apache.org/download.cgi valitsemme yhden Peileistä Apache-palvelimen jakelupaketin lataamista varten. Se voi olla esimerkiksi http://www.sai.msu.su/apache/httpd/binaries/win32/, http://apache.rinet.ru/dist/httpd/binaries/win32/, http://apache.rediska.ru/httpd/binaries/win32/ tai muita. Versiot kaikille alustoille, mukaan lukien ja Win32:lle jaetaan ilmaiseksi.

Tällä sivulla on myös linkkejä kahteen jakeluun:
Win32 binaari ilman kryptoa (ei mod_ssl) ( MSI-asennusohjelma): apache_2.2.8-win32-x86-no_ssl.msi
Win32-binaari, mukaan lukien OpenSSL 0.9.8g (MSI Installer): apache_2.2.8-win32-x86-openssl-0.9.8g.msi

Huomautus:
SSL (eng. Secure Sockets Layer – suojattujen pistokkeiden taso) - kryptografinen protokolla tarjoamalla turvallinen lähetys dataa Internetin kautta. Käytettäessä asiakkaan ja palvelimen välille luodaan suojattu yhteys. Pääset suojatuille sivuille SSL-protokolla, URL-osoitteessa käytetään tavallisesti https-etuliitettä normaalin http-etuliitteen sijaan osoittamaan, että SSL-yhteyttä käytetään. SSL edellyttää, että palvelimella on SSL-sertifikaatti.

3. Suorita asennustiedosto ja noudata ohjatun asennustoiminnon ohjeita.

Hyväksymme lisenssisopimuksen.

Seuraavassa vaiheessa sinua pyydetään määrittämään palvelimen asetukset. Määritä verkkotunnukseksi ja nimeksi paikallinen isäntä osoitteena, johon palvelimen ilmoitukset lähetetään, mikä tahansa osoite, esimerkiksi: [sähköposti suojattu] .

Muistomerkki tietokoneen nimi "localhost" tarkoittaa samaa verkkolaite(tietokone), josta verkkopaketti lähetetään tai yhteys muodostetaan. Nuo. tämä on sama tietokone, johon asennat verkkopalvelimen. Yleensä "localhost" on kartoitettu osoitteeseen 127.0.0.1.

Apache-palvelin voidaan käynnistää kahdella tavalla: palveluna tai manuaalisesti. Esimerkissämme palvelin käynnistetään kaikille käyttäjille automaattisesti palveluna. Huomio! Tämä artikkeli ei käsittele verkon ja Windowsin hallinta- ja suojausongelmia.

Valitse tyypillinen asennus.

Valitse palvelimen asennuspaikka. Voit jättää sen oletuksena, mutta suosittelen laittamaan kaikki verkko-ohjelmistot yhteen kansioon, esimerkiksi: C:\Omat palvelimet(se on helpompaa). Napsauta Muuta... -painiketta ja määritä polun valintaikkunassa: C:\MyServers\usr\local\ C:\Program Files\ sijaan Apache ohjelmisto Foundation\Apache2.2\

Jos kaikki on tehty oikein ja olet varma siitä :) paina Asenna-painiketta

Asennusprosessi alkaa...

Lopuksi voit poistua ohjatusta asennustoiminnosta napsauttamalla Valmis-painiketta.

Kun asennus on valmis, palvelin käynnistyy automaattisesti (pitäisi käynnistyä) ja kuvake tulee näkyviin kellon lähelle.
Jos kuvakkeessa näkyy vihreä kolmio, palvelin on normaalisti asennettu ja käynnistetty.

Kaksoisnapsauttaminen tätä kuvaketta tuo esiin seuraavan ikkunan:

Täällä voit nähdä palvelun tilan ja tarvittaessa pysäyttää, käynnistää, käynnistää uudelleen jne.

Jatkossa (tietokoneen seuraavan käynnistyksen jälkeen) tämä kuvake (tässä versiossa) ei enää näy itsestään. Siksi voit lisätä käynnistyksen Valvo Apache-palvelimia ladata automaattisesti manuaalisesti.

Tarkastellaan sen suorituskykyä käynnistämällä selain ja kirjoittamalla palvelimesi osoite osoitepalkkiin, meidän tapauksessamme http://localhost tai yksinkertaisesti paikallinen isäntä. Jos näet tällaisen sivun, voimme onnitella sinua - olet asentanut palvelimen, sinun on vielä määritettävä se hieman.

4. Määritä palvelin avaamalla asetustiedosto joko "Käynnistä".

tai manuaalisesti kansioon, johon Apache asennettiin, tässä tapauksessa C:\MyMyServers\usr\local\Apache2.2\conf\httpd.conf.

httpd.conf on ainoa tiedosto, joka täytyy määrittää. Sinun täytyy löytää ja muuttaa joitakin rivejä siitä. On toivottavaa, että myöhemmin se ei olisi tuskallisen tuskallista :), tee ensin kopio tästä tiedostosta. Poistat yhtäkkiä jotain ylimääräistä. Tässä tiedostossa on paljon #-merkillä alkavia kommentteja. Joitakin vaihtoehtoja on myös aluksi kommentoitu.

a) Aseta parametrin ServerName arvo seuraavasti palvelimen nimi localhost. (ei pistettä lopussa)

b) Sen sijaan DocumentRoot "C:/MyServers/usr/local/Apache2.2/htdocs" osoittaa DocumentRoot "C:/MyServers/home/localhost/www". C:/MyServers/home/localhost/www on hakemisto, johon html-tiedostosi sijoitetaan. C:\MyServers\home, jonka loimme heti alussa. Luo nyt toinen hakemisto C:\MyServers\home\localhost, luo siihen 2 hakemistoa: \cgi ja \www.

c) Etsi jakso, joka alkaa ja loppu . Korvaa se


SalliOverride All
Salli kaikilta

Tämä lohko tallentaa kaikkien oletushakemistojesi asetukset.

d) Etsi jakso, joka alkaa ja loppu , poista se kokonaan, mukaan lukien kommentit.

e) Etsi lohko


DirectoryIndex index.html

Tässä asetetaan ns. indeksitiedostot, jotka palvelin antaa automaattisesti, kun hakemistoa käytetään, jos html-dokumentin nimeä ei ole määritetty. Periaatteessa voit lisätä tähän muita nimiä, esim. index.htm ja index.php (jos jatkat PHP:n asentamista ja käytät / kirjoitat skriptejä), tai voit tehdä lisäasetuksia ... htaccess-tiedostoissa. Korjataan esimerkiksi lohko seuraavasti:


DirectoryIndex index.php index.htm index.html

e) Jos et käytä cgi-skriptejä, tämä vaihe voidaan ohittaa. Korjaa ScriptAlias-parametri:

ScriptAlias/cgi-bin/ "C:/MyServers/usr/local/Apache/cgi-bin/" päällä ScriptAlias/cgi-bin/ "C:/MyServers/home/localhost/cgi". Lisää tämä rivi sen jälkeen: ScriptAlias/cgi/ "C:/MyServers/home/localhost/cgi". Tämä on hakemisto, jossa CGI-skriptit sijaitsevat.

Poista lohko ... koska emme aio käyttää lisäasetuksia.

Etsi ja muokkaa AddHandler cgi-script -riviä (älä unohda poistaa kommenttia): AddHandler cgi-script .cgi .bat .exe .pl Tämä asetus kertoo, että tiedostoja, joiden tunniste on .cgi .bat .exe .pl, käsitellään cgi-skripteinä.

g) Jos käytät SSI:tä, aseta seuraavat parametrit:

AddType text/html .shtml
AddHandler-palvelimen jäsennetty .shtml .html .htm

g) Listen-käskyt määrittävät IP-osoitteet ja portit, joissa Apache-palvelin "kuuntelee" yhteyttä. Yleensä tällaisten direktiivien määrää ei ole rajoitettu. Jos käytät palvelinta vain sivustojesi virheenkorjaukseen, määritä vain Kuuntele 127.0.0.1:80.

5. Kaikki. Tallenna muutokset! Käynnistä palvelin uudelleen ( Restart ) Jos kaikki on tehty oikein, palvelin toimii. Käynnistä selain ja tarkista kuten ennen. Näet selaimessa sivun, jossa on "Index of /", koska emme lisänneet pääsivua (hakemisto) (esimerkiksi index.htm) C:/MyServers/home/localhost/www-hakemistoon. Jos haluat nähdä jotain mielenkiintoisempaa, luo ja tallenna html-sivusi sinne.Voit tehdä tämän joko millä tahansa web-editorilla tai kirjoitamme alla olevan tekstin muistioon ja tallennamme tiedoston tunnisteella .html (tai .htm , ei .txt). Kun tallennat sivua Muistioon, valitse tiedostotyyppi: kaikki tiedostot ja kirjoita tiedostonimikenttään index.htm.

index.html-tiedoston teksti (voidaan kopioida ja tallentaa):





Ensimmäinen sivu


Tämä on minun sivuni!





Käynnistä selain ja syötä osoiteriville palvelimesi osoite, meidän tapauksessamme http://localhost tai yksinkertaisesti paikallinen isäntä näet tällaisen sivun. Voimme onnitella sinua - olet asentanut ja määrittänyt palvelimen.

Nyt luomme verkkosivumme, isännöimme niitä palvelimellamme (hakemistossa C:/MyServers/home/localhost/www) ja...

Pääset palvelimellesi osoitteesta paikallinen verkko millä tahansa tietokoneella kirjoitamme palvelimen osoitteen, esimerkiksi: http://palvelin tai yksinkertaisesti palvelin(koska tietokoneen nimi esimerkissä on palvelin, ja jos sinulla on esimerkiksi tietokoneen nimi PC11, niin se tulee olemaan http://pc11) . Huomaa, että pääsy on mahdollista vain, jos se on sallittu (ei kielletty) Kuuntele-parametreissa .

Voit luoda html-sivuja Nvu 1.0 - ilmainen editori verkkosivut. Koko on noin 6,76 MB. Voit ladata osoitteesta http://nvu.mozilla-russia.org/. Nvu-ohjelman virallinen verkkosivusto http://www.nvu.com/. NVU on avoin lähdekoodi Linspire-projekti visuaalisen (WYSIWYG) HTML-editorin luomiseksi. NVU:n luomisen perustana oli osa Mozillalta allokoitua koodia.

Tai voit käyttää KompoZeria, Nvu:n seuraajaprojektia. CompoZer- ilmainen html-editori, joka tarjoaa aloittelijoille, jotka eivät tiedä HTML:stä kaikkea tarvittavat varat luoda omia verkkodokumentteja. Ohjelma on melko yksinkertainen ja intuitiivinen käyttää, siinä on joitain FrontPagen ja Dreamweaverin ominaisuuksia, siinä on tyylieditori jne.

From palkatut toimittajat voit huomata Microsoft Office FrontPage 2003 tai seuraaja Microsoft Office SharePoint Designer 2007.