Inštalácia a konfigurácia Apache. Inštalácia a konfigurácia servera Apache

Apache HTTP-server je takzvaný bezplatný webový server, ktorý je multiplatformný softvér. Apache podporuje nasledujúce operačné systémy: BSD, Microsoft Windows, Linux, Mac OS, BeOS a Novell NetWare.

Ako správne nakonfigurovať Apache?

Typicky je server Apache nakonfigurovaný prostredníctvom súboru s názvom .htaccess ( podrobné pokyny). Tento súbor sa nachádza na serveri, na ktorom sa nachádza váš web. Samotný server prečíta obsah a použije nastavenia, ktoré sú tam uvedené. Nižšie uvádzame hlavné parametre, ktoré sa zmenia v súbore .htaccess a budú užitočné pre webmasterov.

Automatické presmerovania z jednej strany na druhú

  • Presmerovanie z adresy http://www.site.com na adresu http://site.com
  • Spätné presmerovanie z lokality http://site.com na adresu http://www.site.com
  • Prechod z pôvodnej domény na novú doménu
  • site.com/page alebo site.com/page/ presmerované na site.com/page.html
  • Späť na site.com/page.html na lokalite site.com/page
  • Na konci adresy URL odstráňte lomítko (bolo to site.com/page/, stalo sa site.com/page)
  • Presmerovať všetky stránky z jednej sekcie site.com/razdel-1/razdel-2/stranka na stránky inej sekcie site.com/razdel-1/page

Chyba pri manipulácii

  • Ak sa vyskytne chyba, používateľ dostane peknú stránku namiesto štandardnej labudy, ktorú sa pýtate.

Konfigurujte zabezpečenie lokality

  • Ochrana pred injekciami
  • Ochrana proti krádeži snímok
  • Blokovanie používateľov podľa IP
  • Ochrana súborov a priečinkov
  • Práca s používateľskými agentmi

Kódovanie stránok stránok

  • Pracujte s kódovaním stránok na úrovni servera.

Optimalizácia webových stránok

  • Urýchlenie stránky
  • Práca s vyrovnávacou pamäťou
  • Zmeňte domovskú stránku webu

Nastavenia PHP

  • Práca s parametrami PHP, ktoré sú nastavené na úrovni servera.

Informácie o Apache

Spoľahlivosť a flexibilita konfigurácie sú hlavnými výhodami aplikácie Apache. Pomocou tohto softvéru môžete pripojiť externé moduly, ktoré slúžia na poskytovanie údajov, upravovanie chybových hlásení a používanie DBMS na autentifikáciu používateľov. Apache podporuje protokol IPv6.

Od apríla 1996 až do súčasnosti je Apache najbežnejším a najpopulárnejším HTTP serverom na internete. Podľa štatistík HTTP server v auguste 2007 pracoval na 51% všetkých webových serverov, v máji 2009 sa tento ukazovateľ znížil na 46% av januári 2011 sa zvýšil na 59%. K dnešnému dňu viac ako 59% celkového počtu webových stránok slúži webový server Apache. Vývoj a podpora aplikácie Apache zodpovedá otvorená komunita pre vývojárov pod záštitou Apache Software Foundation. Apache je súčasťou väčšiny softvérových produktov vrátane IBM WebSphere a Oracle.

Apache je vybavený vstavaným mechanizmom virtuálnych hostiteľov. Vďaka tomu na jednej Adresa IP  môžete zobrazovať veľké množstvo webových projektov (názvy domén) a zároveň zobrazovať každý z nich svoj vlastný obsah. Pri každom virtuálnom hostiteľovi môžete určiť nastavenie modulu a jadra, ako aj nastaviť obmedzenia pre prístup k celému webu alebo k niektorým súborom. Apache-ITK pre každý virtuálny hostiteľ môžete spustiť proces httpd s identifikátormi gid a uid. K dispozícii sú aj moduly, ktoré vám umožňujú obmedziť a zohľadniť zdroje servera (prevádzka, RAM, CPU) samostatne pre každý virtuálny hostiteľ.

Tento materiál je napísaný špeciálne pre ľudí, ktorí sa práve chystajú pripojiť k štíhlemu okruhu webových vývojárov alebo chcú len pochopiť niektoré z jemností tohto procesu. Tu sa dozviete, čo je server Apache, aký môže byť, kde ho získať a ako ho správne používať. V budúcnosti sa pokúsime čo najpresnejšie popísať nastavenia Apache a jeho funkčné vlastnosti, aby aj profesionáli v týchto materiáloch našli niečo nové.

Aby sa web mohol objaviť na internete, musí byť umiestnený na hostiteľskom alebo vlastnom serveri, ktorý je pripojený k sieti a má vyhradenú IP adresu. Server je počítač, na ktorom je nainštalovaný špeciálny softvér, ktorý sa nazýva aj "webový server".

Vo svete je veľa webových serverov. Odlišujú sa od funkčnosti a účelu. Dnes budeme hovoriť o najobľúbenejších z nich, inštalované na väčšine serverov, ktoré poskytujú poskytovateľov. Apache server vyhovuje takmer všetkým potrebám moderného vývoja webu, ale zároveň je jednoduchý na to, aby ho programátori nainštalovali na ladenie svojich programov.

V roku 1994 Národné centrum pre superpočítačové aplikácie na univerzite v Spojených štátoch Illinois (NCSA) Rob McCool ustanovené vo všeobecnom užívaní prvej webový server, ktorý sa nazýva - NCSA HTTP démon. Server získal popularitu v úzkych kruhoch, ale v polovici roku 1994 McCool opustil univerzitu a vývoj sa zastavil.

Malá skupina zainteresovaných správcov webu začala spolupracovať na produkte. Komunikovaním v diskusnom liste prostredníctvom e-mailu vytvorili "opravy" a inovácie pre server. Vytvorili skupinu Apache, ktorá vyvinula prvú verziu servera Apache. Stalo sa to v apríli 1995, kedy sa na základ použili všetky existujúce "patche" (NCSA Server 1.3). Takže tam bolo prvé oficiálne verejné vydanie Apache 0.6.2.

Prvá verejná verzia aplikácie Apache sa objavila v apríli 1995 a v decembri tam bola verzia 1.0

Práca na serveri sa nezastavila na jeden deň a veľmi skoro sa stala jednou z najpopulárnejších. Po mnohých testoch 1. decembra 1995 sa objavila verzia 1.0, stabilná a spoľahlivá. Počas všetkých týchto rokov a dodnes Apache zostáva úplne zadarmo. Možno to tiež určilo úspech servera, pretože podľa dáta  NetCraft, Apache je momentálne inštalovaný na 67% všetkých serverov na svete.

Apache server je teraz nainštalovaný na 67% serverov po celom svete. V súčasnosti sa vyvíjajú dve pobočky naraz

V súčasnosti sa vyvíjajú dve pobočky Apache paralelne - verzie 2.0 a 1.3. Druhá verzia prešla značným počtom zmien, ktoré sa dotkli hlavne jadra programu a niektorých dôležitých modulov. Vzhľadom na to, že moduly napísané vývojármi tretích strán pre verziu 1.3 nebudú fungovať vo verzii 2.0, je tiež podporovaná aj "stará" Apache. Avšak, ak sa chystáte nainštalovať Apache prvýkrát, potom stojí za to pozrieť sa na novú verziu.

Apache je plnohodnotný, rozšíriteľný open source webový server

Takže, čo je Apache? Je plne vybavený, rozšíriteľný webový server, ktorý plne podporuje protokol HTTP / 1.1 a je distribuovaný open source. Server môže bežať na takmer všetkých bežných platformách. Existujú hotové spustiteľné súbory serverov pre systémy Windows NT, Windows 9x, OS / 2, Netware 5.x a niekoľko systémov UNIX. Pritom je veľmi jednoduché inštalovať a konfigurovať. V tomto môžete vidieť o niečo neskôr.

Apache je konfigurovaný pomocou textových konfiguračných súborov. Hlavné parametre sú už nastavené na "predvolené" a vo väčšine prípadov budú fungovať. Ak nemáte dostatok funkcií bežného Apache, mali by ste sa pozrieť na distribuované moduly napísané skupinou Apache a vývojármi tretích strán. Dôležitou výhodou je, že tvorcovia aktívne komunikujú s používateľmi a reagujú na všetky chybové správy.

Najjednoduchšia funkcia, ktorú Apache môže vykonávať, je postaviť sa na server a zobraziť normálne stránky HTML. Keď sa prijme žiadosť o určitú stránku, server odošle odpoveď na odpoveď prehliadača. Zadajte adresu, stránka sa otvorí - všetko je jednoduché.

Pomocou servera Apache môžete vykonávať jednoduchú autentifikáciu

Funkcia je komplikovanejšia, ktorá je zakotvená v protokole HTTP / 1.1 - overovanie používateľa. Pomocou bežných nástrojov servera Apache môžete rozlíšiť prístup k určitým stránkam stránok pre rôznych používateľov. Je to potrebné napríklad na vytvorenie rozhrania správcu webu. Na tento účel sa používajú súbory .htaccess a .htpasswd, moduly mod_auth a mod_access. Používatelia môžu byť rozdelení do skupín a pre každého z nich môžete priradiť svoje prístupové práva.

Apache server podporuje prácu s technológiou SSI

Na oddelenie dizajnovej a funkčnej časti lokality, ako aj na zjednodušenie zmeny statických objektov je technológia SSI. Umožňuje vložiť všetky duplicitné informácie do jedného súboru (napríklad top.inc) a potom vložiť odkaz na stránku. Potom, ak potrebujete zmeniť niekoľko riadkov v týchto informáciách, budete ich musieť zmeniť iba v jednom súbore. Apache server podporuje túto technológiu a umožňuje inklúzie serverov v plnom rozsahu.

Na serveri Apache môžete vytvárať vlastné adresáre pre webové stránky

Ak je niekoľko používateľov nainštalovaných na rovnakom serveri s nainštalovaným operačným systémom Unix a serverom Apache, každý z nich môže vytvoriť samostatný adresár. Presnejšie sa vytvorí automaticky spolu s aliasom. To sa vykonáva pomocou modulu mod_userdir a smernice UserDir. Môžete napríklad zmapovať priečinok public_html v domovskom priečinku používateľa na adresu www.site.ru/~user. Vo všeobecnosti sa to robí na serveroch väčšiny stránok, ktoré poskytujú bezplatný hosting. Správca serverov môže povoliť alebo zakázať určitým používateľom vytvárať domáce stránky, používať SSI a iné funkcie servera. Plnohodnotný hosting zvyčajne zahŕňa vytvorenie samostatného virtuálneho servera pre každého používateľa.

Môžete nakonfigurovať virtuálne hostiteľské počítače. Kvôli nim na jednom fyzickom serveri je možné obsahovať niekoľko virtuálnych

Server Apache bol jedným z prvých serverov na podporu virtuálnych serverov (hostiteľov). Táto funkcia umožňuje hosťovať niekoľko fyzických lokalít na jednom fyzickom serveri. Každá z nich môže mať vlastnú doménu, administrátora, IP adresu a tak ďalej.

Ak potrebujete domény domény domain.com a domény domény na vašom serveri, musíte sa najprv presvedčiť, či je vaša IP adresa naň priradená v systéme DNS. Potom vytvorte v konfiguračnom súbore Apache dve direktívy , kde popisujete každého virtuálneho hostiteľa. Takže server bude vedieť, ktorý priečinok "pošle" prichádzajúcu žiadosť.

Apache podporuje prácu s skriptami PHP, CGI a ďalšími

V súčasnosti je väčšina internetových stránok dynamická. To znamená, že ich vzhľad a obsah sa vytvára pomocou softvérového skriptu napísaného v jednom z "jazykov" (nemôžu byť úplne nazývané jazyky, definícia je skôr ľubovoľná). V súčasnosti sú najpoužívanejšie technológie CGI a PHP  , Samozrejme, v aplikácii Apache je podpora oboch, plus možnosť pripojiť ďalšie jazyky.

Modul mod_cgi vám umožňuje umiestniť CGI skripty na serveri. Vo všeobecnosti ide len o spustiteľné súbory napísané v jednom z prijateľných programovacích jazykov. Môžu byť uchovávané v kompilované forme (napríklad tak urobiť, ak CGI napísaný v jazyku C ++) a v podobe zdrojového textu (ak je nainštalovaný na serveri Perl programátor môže umiestniť súbory a podobne. Niekedy majú rasshirenie.pl).

Pokiaľ ide o PHP, možnosť jeho integrácie do Apache poskytuje vývojári samotného PHP. Apache robí iba medziľahlé funkcie medzi skriptom a kompilátorom. Existujú dva spôsoby, ako integrovať PHP do Apache. Prvým je inštalácia špeciálneho modulu, ktorý rozširuje možnosti servera, a potom sa sám dokáže "skompilovať" skripty. A druhá je inštalácia v konfiguračných súboroch prepojení medzi súbormi php a samotným kompilátorom (je to na disku vo forme files.cgi alebo.exe).

Najnovšia verzia Apache má modul pre prácu so silnou kryptografickou ochranou SSL / TSL

Na serveri Apache môžete vytvárať nielen jednoduché amatérske lokality, ale aj zdroje, ktoré vyžadujú vážnu kryptografickú ochranu prenášaných dát. Zvlášť na tento účel bol vyvinutý protokol SSL / TLS a jeho podpora bola zabudovaná do Apache 2.0. Pomocou špeciálneho modulu môžete vykonať autentifikáciu na základe osobných certifikátov, ktoré takmer určite zaručujú autentickosť používateľa.

Apache udržiava podrobné záznamy o všetkom, čo sa deje na serveri

Samozrejme, Apache server môže uchovávať záznamy o všetkých akciách, ktoré s ním prebiehajú. A správca môže zvoliť stupeň podrobností protokolu. Protokoly sa uchovávajú oddelene pre chyby, úspešné operácie a pre každého virtuálneho hostiteľa. Stručne povedané, kompletný súbor pre dôkladnú analýzu chýb, ktoré sa objavia.

V rámci jedného materiálu sme sa nepodarilo nehovoriť podrobne o všetkých funkciách servera Apache, ale jednoducho ich zoznamovať. Tento článok bol určený pre prvý povrchný oboznámenie používateľov a budúcich vývojárov s serverom Apache. V iných materiáloch sa určite zaoberáme všetkými jemnosťami budovania webových stránok na základe tohto nádherného softvérového balíka.

Dobre sme hovorili o webovom serveri, je načase nainštalovať ho a otestovať ho v prípade. Vytvára sa zoznam najbežnejších webových serverov, keď vyberiete konkrétne úlohy, ktoré sa berú do úvahy, pod ktorými sa rozvíja. Zastavili sme náš výber na bezplatnom webovom serveri Apache. Považujem to za ideálne pre lokality na základnej a strednej úrovni. Samozrejme, môžete ísť jednoduchým spôsobom - inštalovať hotový kombajn Denver, ako to robí väčšina nováčikov, ale v našom prípade, okrem výsledku, teoretické vedomosti sú tiež dôležité. A po dnešnej hodine sa vaša zručnosť rozhodne zvýši :)

Prejsť na stránku sťahovania projektu - http://httpd.apache.org/download.cgi  a prevziať najnovšiu stabilnú verziu v systéme Windows ako inštalačný program MSI (v mojom prípade to bol apache_2.2.14-win32-x86-no_ssl.msi). Začnime inštaláciu. Prvý dialóg, ktorý nás môže zavádzať, je dialógové okno pre zadávanie informácií o serveri:

Konfigurovať náš server, budeme po inštalácii, ale teraz sa nijako zvlášť pary a zadajte do poľa "Network Doména" a "Názov servera" localhost, a "správca" s e-mailovú adresu "je vaša e-mailová adresa (ktorá je localhost, budú vysvetlené neskôr) dolných prepínačov Nedotýkajte Hit "Next", súhlasí s typickou inštaláciu, opäť "Next" inštalačný program vás vyzve na vyberte adresár, v ktorom bude inštalovaný webový server ...:


Podľa môjho názoru je cesta príliš dlhá, skráťme ju C: \\ Program Files \\ Apache, Pokračujeme v inštalácii, čakáme na jej ukončenie. Po zatvorení inštalátora sa v zásobníku zobrazí ikona Apache monitora:

Tento nástroj vám umožňuje spustiť, zastaviť, reštartovať náš webový server, zistiť jeho stav. Samotná Apache bola s nami založená ako služba, ktorá sa automaticky spustí po spustení počítača:


Teraz si spomeňme na to, o čom sme hovorili v článku. Ako si pamätáte, každý počítač pripojený k sieti má svoju vlastnú IP adresu. Ale aj v prípade, že počítač nie je pripojený k sieti, má aspoň jeden interný IP adresu. Táto adresa - 127.0.0.1 , Na všetkých počítačoch je to isté a ukazuje na samotný počítač. To znamená, že ak sieťový klient aplikácie zadať adresu servera 127.0.0.1, potom klient sa pokúsi pripojiť k serveru v počítači rovnaký. Potom sme hovorili o doménových mien, ktoré sú prevedené do IP-adresy DNS serverov. Interná adresa 127.0.0.1 má svoje vlastné interné doménové meno - localhost, V takom prípade previesť názov na adresu nepotrebujú počítač na prístup k DNS-server, pretože uvedená linka je začlenená do počítača.

Začnime webový prehliadač a zadajte domainhost domény do panela s adresou:


Dúfam, že pochopíte, čo sa stalo? Localhost domény transformovaná na IP adresu 127.0.0.1, webovým prehliadačom a pripojením k webovému serveru na tejto adrese a porte 80 a žiadané domovskú stránku pomocou protokolu HTTP. To znamená, že náš webový server beží, poslal stránku prehliadača, ktorý hovorí, že "to funguje" ( "práca").

Pristúpiť na konfiguráciu náš webový server, ktorý sa redukuje editovať konfiguračný súbor Apache. Najprv je potrebné získať pohodlné, praktické a zároveň jednoduchý textový editor. Ak už máte - blahoželanie, ale ak ste nešťastný užívateľ Poznámkový blok editor môže ponúknuť. Prejdite do priečinka C: Program Files \\ Apache \\ conf  a premenujte súbor httpd.conf  v httpd.conf.bakaby bola počiatočná konfigurácia po ruke. Vytvorte nový súbor httpd.conf  s týmto obsahom:

ServerRoot "C: / Program Files / Apache" Počúvajte 80 LoadModule actions_module modules / mod_actions.so LoadModule alias_module modules / mod_alias.so LoadModule asis_module modules / mod_asis.so LoadModule auth_basic_module modules / mod_auth_basic.so LoadModule authn_default_module modules / mod_authn_default.so LoadModule authn_file_module moduly /mod_authn_file.so LoadModule authz_default_module modules / mod_authz_default.so LoadModule authz_groupfile_module modules / mod_authz_groupfile.so LoadModule authz_host_module modules / mod_authz_host.so LoadModule authz_user_module modules / mod_authz_user.so LoadModule autoindex_module modules / mod_autoindex.so LoadModule cgi_module modules / mod_cgi.so LoadModule dir_module modules / mod_dir.so LoadModule env_module modules / mod_env.so LoadModule include_module modules / mod_include.so LoadModule isapi_module modules / mod_isapi.so LoadModule log_config_module modules / mod_log_config.so LoadModule mime_module modules / mod_mime.so LoadModule negotiation_module modules / mod _negotiation.so LoadModule rewrite_module modules / mod_rewrite.so LoadModule setenvif_module modules / mod_setenvif.so ServerName localhost AccessFileName .htaccess ServerTokens prod LogLevel error ErrorLog "Protokoly / error.log" DefaultType text / plain AddDefaultCharset UTF-8    DirectoryIndex index.html    Objednávka povoľuje, poprieť odmietnuť všetky Satisfy All    TypesConfig conf / mime.types AddType aplikácie / x-kompresiu .Z AddType aplikácie / x-gzip .gz .tgz    LogFormat "\\ nclient =% h \\ NTIME =% (% d% m% Y% H: ..% M:% S) t \\ nstránku =% U% q \\ nreferer =% (referer) aj \\ nreqmethod =% m \\ nhost =% (hostiteľa) aj \\ NAgent =% (User-agent) i \\ n \\ n "MyLog

Chápeme to. ServerRoot  - cesta, kde je nainštalovaný náš webový server. Dávajte pozor na lomky. Listern  - určuje číslo portu, ktorý bude "počúvať" na webový server, a ak je to potrebné, IP adresa (ak má počítač viac pripojenie a je potrebné prijať pripojenie len na jednej z nich). Poukazovali sme portu 80, čo je štandard pre webové servery. LoadModule načíta modul modul webového servera, moduly vám umožňujú získať ďalšie funkcie. V našom konfiguračnom súbore je uvedený zoznam štandardných modulov. AddDefaultCharset  - predvolené kódovanie, dať Unicode (UTF-8). Zvyšok, kým nie sme obťažovaní.

A teraz najdôležitejšia vec. Zabudli ste na to, prečo inštalujeme webový server? To je správne, pracovať na našich budúcich stránkach. Existuje koncept koreňový adresár  - To je adresár, kde je obsah týchto stránok, to znamená, že súbory, z ktorých sa skladá. V predvolenom nastavení je v našom adresári Apache koreňový adresár , Chystáte sa tam nájsť jediný súbor pod menom index.html, Ide o súbor, ktorý obsahuje hlavnú stránku, ktorá hovorí, že "to funguje" na http: // localhost, Faktom je, že v prípade, že dotaz (ktorý, mimochodom, je nazývaný url) nie je žiadny názov súboru, webový server hľadá súbor s jedným zo štandardných mien. Tieto mená (presnejšie jedno meno - index.html) sú zaregistrované v našom konfiguračnom súbore:

   DirectoryIndex index.html

Tak na požiadanie http: // localhost  webový server vyhľadá súbor C: \\ Program Files \\ Apache \\ htdocs \\ index.html, na požiadanie http: // localhost / docs - C: \\ Program Files \\ Apache \\ htdocs \\ docs \\ index.html  (v prípade, že docs  - po zobrazení výzvy http: //localhost/news.html - C: \\ Program Files \\ Apache \\ htdocs \\ news.html  a tak ďalej.

Ak je web konštrukcia je vhodné mať nie jeden, ale, povedzme, tri miestne (umiestnený na lokálnom počítači) doménu, ktorá možno nezávisle testovať svoje stránky. Apache umožňuje viac miest, to znamená, že nemusíte mať pre každú doménu inštalovať kópiu webového servera (navyše si uvedomíme, že počítač je možné spustiť iba jeden aplikačný server na konkrétny port). Viacnásobné názvy domén môžu odkazovať na rovnakú adresu IP. Apache, podľa poradia, môže byť v závislosti na doménové meno prevedené na HTTP požiadavky (pamätať nastavenie hostiteľa, článok "Zásady fungovania webového servera"), vyhľadajte súbory v konkrétnom koreňovom adresári. Táto technológia sa nazýva "virtuálny hostiteľ".

Tak odpovedá na adresu 127.0.0.1 localhost, poďme vytvoriť tri interné testy-domain1 doménu, test-DOMAIN2, a test-DOMAIN3, ktorý bude odpovedať na rovnakú adresu. Otvorte súbor v textovom editore C: \\ WINDOWS \\ system32 \\ drivers \\ etc \\ hosts, V tomto súbore môžete určiť príslušné doménových mien a IP adries. Tu nájdeme rovnakú adresu localhost 127.0.0.1. Pridajte nasledujúce riadky na koniec súboru:

127.0.0.1 test domain1 127.0.0.1 test-domain2 127.0.0.1 test-DOMAIN3

Pred vyžiadaním dodržiavanie DNS-serverov je požadované v súbore a v prípade úspechu odvolania zrušený a použitý adresa nájdený.

Ďalším krokom je pre každý názov domény vytvoriť svoj koreňový adresár a povie náš webový server. Odstrániť v priečinku C: \\ Program Files \\ Apache \\ htdocs  súbor index.html  a vytvoriť tri zložky: test-domain1, test-DOMAIN2  a test-DOMAIN3v každej z týchto priečinkov záznam  - pre denníky a priečinky www  - Vlastne koreňový adresár pre doménu. Na konci súboru C: \\ Program Files \\ Apache \\ conf \\ httpd.conf  pridajte nasledovné:

NameVirtualHost *: 80    ServerName test-domain1 DocumentRoot "C: / Program Files / Apache / htdocs / test-domain1 / www" ErrorLog "C: / Program Files / Apache / htdocs / test-domain1 / log / error.log" CustomLog "C: / Program files / Apache / htdocs / test-domain1 / log / access.log "MyLog    ServerName test-domain2 DocumentRoot "C: / Program Files / Apache / htdocs / test-domain2 / www" ErrorLog "C: / Program Files / Apache / htdocs / test-domain2 / log / error.log" CustomLog "C: / Program files / Apache / htdocs / test-domain2 / log / access.log "MyLog    AllowOverride All Options -Indexes    ServerName test-DOMAIN3 DocumentRoot "C: / Program Files / Apache / htdocs / test-DOMAIN3 / www" ErrorLog "C: / Program Files / Apache / htdocs / test-DOMAIN3 / log / error.log" CustomLog "C: / Program files / Apache / htdocs / test-DOMAIN3 / log / access.log "MyLog    AllowOverride All Options -Indexes

Tri bloky VirtualHost  popíšte našich troch virtuálnych hostiteľov. Každý dostáva svoj vlastný koreňový adresár - DocumentRoot, cesta k chybovému denníku - ErrorLog  a protokol prístupu - CustomLog.

V koreňovom adresári každej domény vytvorte súbor index.html  . Vďaka obsahu "Dobrý deň, od skúšobného Doména1", "Dobrý deň, od skúšobného DOMAIN2" a "" Dobrý deň, od skúšobného DOMAIN3 "pre konfiguračný zmeny prejavili, musíte reštartovať Apache (kliknite ľavým tlačidlom myši na ikonu Apache Monitor -\u003e Restart) Ak neboli vykonané žiadne chyby, všetko by malo fungovať:

Blahoželáme, teraz máte nakonfigurovaný webový server s tromi lokálnymi hostiteľmi. Sloboda pre webmastera :) Je čas začať študovať základy webovej konštrukcie.

Tento článok je krok za krokom sprievodcom pri vytváraní lokálneho webového servera. Opisuje inštaláciu webového servera Apache 2.4 na platforme Windows. Inštalácia bola testovaná v systéme Windows XP SP3.

Zloženie webového servera:

  • Apache 2.4 (verzia 2.4.10);
  • PHP 5.4 (verzia 5.4.34);
  • MySQL 5.5 (verzia 5.5.23).

Toto pracovné prostredie je vhodné:

  • skúsení webmasteri na testovanie svojich projektov;
  • začínajúcim správcom webu vytvoriť svoje prvé stránky.

Distribúcie Apache 2.4 a PHP 5.4 sú kompilované do formátu VC9 (Visual Studio 2008).

Verzia aplikácie Apache 2.4 VC9 pracuje prakticky so všetkými aktuálnymi verziami systému Windows (7/8 / Vista / XP SP3).

Ak chcete pracovať s aplikáciami VC9, musíte najprv aktualizovať knižnice Visual C ++.

Inštalácia aktualizácie balíka Visual C ++ knižnice

Prevezmite distribúciu aktualizácií vcredist_x86.exe  z webových stránok spoločnosti Microsoft spustite súbor a vykonajte aktualizáciu.


Inštalácia a konfigurácia servera Apache 2.4


V distribúcii Apache nie je žiadny inštalačný súbor. Preto sa inštalácia vykoná manuálne.

Vytvorte priečinok a rozbaľte archív httpd-2.4.10-win32-VC9.zip.

V konfiguračnom súbore httpd. conf, predvolené trasy sú C: \\ Apache24. Preto bude úprava v konfiguračnom súbore oveľa nižšia, ak rozbaľte archív do tejto zložky.

Distribúciu rozbalíme do priečinka C: \\ TestServer.

Vykonávame úpravy v konfiguračnom súbore C: \\ TestServer \\ Apache24 \\ conf \\ httpd. conf. Pri písaní ciest namiesto "\\" (spätné lomítko) použite znak "/" (lomítko). Preto sú predpísané cesty v operačnom systéme Linux a Unix. Apache bol pôvodne navrhnutý špeciálne pre tieto operačné systémy.

V C: / TestServer / Apache24 vykonáme skupinovú výmenu textu C: / Apache24.

Nastavte hodnotu parametra ServerName.
ServerName localhost: 80

Nastavte hodnotu parametra ServerAdmin (správca e-mail).
ServerAdmin [chránený emailom]

Nastavte hodnotu parametra DocumentRoot (umiestnenie dokumentov lokality).
DokumentRoot C: / TestServer / Apache24 / htdocs

Možno budete chcieť uchovať dokumenty stránok oddelené od servera. Napríklad v priečinku C: \\ MySites. Tento parameter sa dá zmeniť.
DocumentRoot C: / MySites

Spustiteľné súbory Apache sa nachádzajú v priečinku C: \\ TestServer \\ Apache24 \\ bin. Pridajte túto hodnotu do premennej prostredia Windows PATH.
PATH = C: \\ TestServer \\ Apache24 \\ bin ;

Nainštalujte službu Apache ako službu.
httpd.exe -k install

Ak potom pri inštalácii služby dostanete správu o tom, že program bol zablokovaný z externých pripojení. Služba musí byť autorizovaná na odomknutie.

Spustite server Apache.
httpd.exe -k štart

Skontrolujte zdravie servera. Na príkazovom riadku prehliadača zadajte adresu: http: // localhost  , Ak bola inštalácia Apache úspešná, text funguje! Zobrazí sa na obrazovke. , V opačnom prípade sa zobrazí prázdna obrazovka.


Ak sa server nespustí, skontrolujte, či je port 80 zaneprázdnený, ktorý používa štandardne Apache.

To sa robí pomocou príkazu
netstat -anb

Najčastejšie tento port používa Skype alebo Firefox. V takomto prípade buď uvoľnite port alebo preneste Apache na port 8080.

Na tento účel je súbor httpd. conf zmeniť hodnoty parametrov ServerName a Listen. ServerName localhost: 8080
Počúvajte 8080

Potom reštartujte službu príkazom
httpd.exe - znova spustite

a opäť sa pokúšame ísť na adresu http: // localhost

Pre pohodlie práce s serverom Apache môžete nastaviť skratku v ponuke, ktorá ukazuje na C: \\ TestServer \\ Apache24 \\ bin \\ ApacheMonitor.exe

Inštalácia PHP 5.4

Prejdite na webovú stránku vývojára http://windows.php.net/download/  , Nájdite distribúciu PHP 5.4 v sektore Thread Safe VC9 x86 a načítajte archív php-5.4.34-Win32-VC9-x86.zip.

Vytvorte priečinok v lokálnom počítači, nechajte ho C: \\ TestServer \\ PHP54 a rozbaľte archív.

Vrátime sa na stránku s distribúciou Apache. V sekcii Ďalšie + VC9  nájsť archív php5apache2_4.dll-php-5.4-win32.zip  s PHP-moduly Apache a stiahnite si ho.

V archíve nájdete priečinok s najnovšou verziou modulu php5apache2_4.dll a umiestnite ho do priečinka C: \\ TestServer \\ PHP54.

Do konfiguračného súboru httpd. conf pridajte tieto riadky:

Modul LoadModule php 5_ "C: / TestServer / PHP 54 / php 5 Apache 2_4. dll »
Aplikácia AddHandler / x - httpd - php. php
  # nakonfigurujte cestu k php. ini
PHPIniDir «C: / TestServer / PHP 54 / php«

V priečinku C: \\ TestServer \\ Apache54 \\ htdocs  vytvorte súbor test.php.

echo "Dobrý deň, Apache!";
?>

Reštartujte aplikáciu Apache.

V adresnom riadku prehliadača zadávame http: //localhost/test.php  , Ak sa text zobrazí Hello Apache! , potom sa úspešne dokončila inštalácia PHP.

Nastavenie php.ini

Na prácu s databázou MySQL je potrebné nakonfigurovať php. ini je konfiguračný súbor PHP.


V priečinku C: \\ TestServer \\ PHP54 existujú dve šablóny: vývoj a php.ini.

Premenujte šablónu produkcie php.ini v.

Knižnice pre prácu s databázou MySQL sa nachádzajú v priečinku C: \\ TestServer \\ PHP 54 \\ ext. Táto cesta musí byť zaregistrovaná v smernici extension_dir konfiguračného súboru php.ini.

Nájdite tento parameter, odstráňte znak komentára na začiatku riadku (ide o bodkočiarkou) a predpíšte cestu.
rozšírenie_dir = "C: / TestServer / PHP 54 / ext"

Na prácu s databázou MySQL v PHP existujú dve knižnice: php _ mysqli. dll je novší a odporúča sa používať v práci; php _ mysql. dll je starý, ale používa sa na väčšine lokalít.

V súbore php.ini je lepšie zaregistrovať obe knižnice.
rozšírenie = php _ mysql. dll
rozšírenie = php _ mysqli. dll

Po dokončení úprav nezabudnite reštartovať server Apache.

Inštalácia a konfigurácia MySQL

Prejdite na stránku http://www.mysql.ru/download/  , Vyberte verziu pre Win32 alebo Win64. Inštalačný balík si stiahneme mysql-5.5.23-win32.msi.

Spustite súbor mysql-5.5.23-win32.msi.

Súhlasíte s licenčnými podmienkami a zvoľte Typický typ inštalácie.

Prejdime k konfigurácii servera MySQL.

Vyberte podrobnú konfiguráciu - podrobnú konfiguráciu konfigurácie.


Vyberte typ servera s minimálnymi požiadavkami na pamäť - Developer Machine.

Teraz sa musíme rozhodnúť, s akými databázami (InnoDB, MyISAM) bude náš server fungovať.


Multifunkčná databáza - podporovaná InnoDB a MyISAM.
Len pre transakčnú databázu - podporované InnoDB.
Iba pre transakčnú databázu  - podporované myISAM.

Pri výbere podpory InnoDB je ďalším krokom vybrať miesto uloženia pre tabuľky InnoDB.

Maximálny počet simultánnych pripojení má zvoliť manuálne nastavenie a súhlasiť s predvolenou hodnotou (15).


V tomto kroku povolí možnosť Zapnúť sieť TCP / IP pripojenie TCP a vyberie port, cez ktorý sa tieto pripojenia uskutočnia. Taktiež je nastavený parameter Enable Strict Mode - prísny súlad s normou MySQL.

Teraz je potrebné vybrať predvolené kódovanie. Najlepšou možnosťou je kódovanie UTF-8. Preto si vyberáme Najlepšia podpora pre viacjazyčnosť.

Aby služba MySQL fungovala ako služba Windows, nainštalujte službu Nainštalovať ako službu Windows. Ak potrebujete túto službu autorun - nainštalovať Spustite server MySQL automaticky.


Teraz nastavte heslo správcu a vypnite možnosť Upraviť nastavenia zabezpečenia.

Po kliknutí na položku Ďalej a na spustenie sa môže inštalácia MySQL považovať za dokončenú.

Ak chcete skontrolovať funkčnosť MySQL, kliknite na tlačidlo Štart systému Windows, nájdite pomôcku MySQL (príkazový riadok MySQL Server 5.5 MySQL Server) a spustite ju.

Po zadaní hesla správcu sa dostávame k príkazu MySQL.

Zadajte príkaz
zobrazovanie databáz;


Ak uvidíme zoznam databáz, znamená to, že server funguje správne.

Ukončite režim príkazového riadka:
exit;

Tým sa dokončí inštalácia servera. Úspešná práca!

Webový server je program, ktorý je spustený na lokálnom alebo vzdialenom počítači a jeho hlavným účelom je umožniť používateľovi zobraziť webové dokumenty. Keď je adresa stránky zadaná v paneli s adresou po stlačení tlačidla vstúpiť  prehliadač vytvára určitú požiadavku smerovanú na vzdialený počítač - webový server.

Apache HTTP server (skratka z anglického škvrnitý servera.) - jeden z najpopulárnejších a spoločných programov vytvorených pre webových vývojárov a správcov internetových zdrojov. Podľa nezávislých výskumníkov je Apache nainštalovaný na 50% počítačov všetkých používateľov serverov HTTP.

Hlavnými výhodami sú Apache stabilitu, rýchlosť a pružnosť, a sú v dôsledku modulárnej organizácie, rovnako ako skutočnosť, že vývoj open vedie skupinu programátorov, aj keď pod oficiálnym názvom Apache Software Foundation.

Apache podporuje obrovské množstvo operačných systémov a hardvérových platforiem a pomerne často sa používa pod operačným systémom Windows. Je tiež dôležité, aby bol tento webový server úplne zadarmo.

Ako nainštalovať server Apache pre operačný systém Windows 7 bude popísaný v tomto článku.

Inštalácia aplikácie Apache

Najprv musíte stiahnuť najnovšiu verziu distribúcie Apache bez podpory SSL a spustiť inštaláciu. V uvítacom okne kliknite na " ďalšie"Prečítajte si licenčnú zmluvu developera a potvrďte jeho súhlas s ním.

Potom v okne inštalácie musíte vyplniť polia, ako je znázornené na obrázku nižšie av poli " E-mailová adresa správcu»Zadajte svoju e-mailovú adresu, kliknite na" ďalšie"A nastavte prepínač na" zvyk».




Ďalej vytvorte adresár www na jednotke C a zadajte ho ako inštalačný priečinok pre Apache, kliknite na " ďalšie"V tomto a" inštalovať"V nasledujúcom okne. Po dokončení inštalácie kliknite na tlačidlo " úprava».

Ak všetko prebehlo dobre, v zásobníku by sa mala zobraziť ikona správy webového servera Apache. Zastavte a reštartujte ho kliknutím na ikonu ľavým tlačidlom myši.

Kliknutím pravým tlačidlom na rovnakú ikonu môžete prejsť na rôzne systémové služby operačného systému alebo otvoriť monitor Apache.

Ak chcete skontrolovať, či je nainštalovaný nainštalovaný server Apache, zadajte do adresného riadka prehliadača http: // localhost

Ak by bola stránka s inspirujúcim nápisom " Funguje to!"Potom bola inštalácia Apache úspešná a fungovala správne.

Základná konfigurácia webového servera

Aj keď Apache a je veľmi príjemné a veľmi spoľahlivé, nie všetci sú pripravení ju použiť ako lokálny server pre rad dôvodov, a hlavné - chýba aj medzi Microsoft Windows  akýkoľvek grafický konfigurátor, ktorý je pre väčšinu používateľov dosť nezvyčajný.

Konfigurácia servera sa vykonáva manuálne úpravou konfiguračného súboru httpd.conf. Avšak, na rozdiel od pojmu zabudnutia a zložitosti tohto procesu, nič zložité to z dvoch dôvodov v tejto operácii: za prvé, aby novo nainštalovaný server Apache, ktorý je nakonfigurovaný pre prijateľnú a pohodlnú prácu, je potrebné zmeniť v konfiguračnom súbore veľmi málo údajov a za druhé - komentáre httpd.conf obsahujú veľa užitočných informácií potrebných na pochopenie konfigurácie.

Čo je potrebné?

  • Spustite Apache pod platformou Windows 7;
  • Uložte súbory budúceho webu do adresára, ktorý je používateľsky priateľský (napríklad C: \\ www);
  • Nespôsobuje problémy s kódovaním, a to najmä - s displejom cyrilika;
  • Schopnosť pracovať s viacerými webovými stránkami súčasne.

Ak chcete tieto problémy úspešne vyriešiť, prejdite do priečinka s aplikáciou Apache, nájdite a otvorte súbor httpd.conf v podpriečinku. Upozorňujeme, že riadky začínajúce " mreže", Sú textové poznámky a ako nastavenia pre webový server používajú riadky, na začiatku ktorých ikona" mreže"Chýba.

Najprv musíte nakonfigurovať adresár, ktorý server použije ako priečinok webových stránok. Nájdite v texte riadok, ktorý začína na DocumentRoot, Táto smernica určuje, ktorý priečinok bude koreňový priečinok.

Opravte to DocumentRoot  "C: / www". Malo by sa objasniť, že lomky v tomto súbore by mali byť naklonené napravo a nie doľava, pretože používatelia Windows sú pravdepodobne už zvyknutí. Po uvedených manipuláciách sa vyrieší problém s umiestnením vašich stránok.

  Možnosti (určuje, ktoré funkcie servera budú k dispozícii) AllowOverride (určuje, ktoré smernice z .htaccess môžu overovať rovnaké v httpd.conf) Order (nastaví určité pravidlá prístupu k serveru)

Zoznam použitých parametrov:

Možnosti. K dispozícii sú nasledujúce možnosti:

  • Zahŕňa - použitie SSI je povolené;
  • ZahŕňaNOEXEC - použitie SSI je povolené s obmedzeniami (nie je povolené #include  a #exec);
  • Indexy - použitie indexových súborov je povolené a ak URL odkazuje na adresár lokality (napríklad, www.domain.ru/dir/), v ktorom nie je indexový súbor, sa zobrazí obsah tohto adresára a ak táto voľba nie je k dispozícii, vydá sa upozornenie, že prístup je zamietnutý;
  • ExecCGI - vykonávanie skriptov CGI je povolené;
  • FollowSymLinks - server sleduje symbolické odkazy adresára (používa sa na systémoch Unix);
  • SymLinksIfOwnerMatch - server sleduje dostupné symbolické odkazy v adresári, iba ak má cieľový súbor jedného vlastníka s odkazom;
  • Všetko - všetky vyššie uvedené sú povolené spoločne;
  • Žiadne - všetky vyššie uvedené sú spoločne zakázané.
  • MultiViews - možnosť vybrať konkrétny obsah a jeho doručenie v závislosti od preferencií prehliadača (aj keď je všetko zahrnuté (Možnosti všetko).

AllowOverride. možnosti:

  • AuthConfig - umožňuje používať smernice na autorizáciu;
  • FileInfo - umožňuje používanie smerníc na prácu s rôznymi typmi dokumentov;
  • Indexy - umožňuje používať smernice pre prácu s indexovacím súborom;
  • Limit - umožňuje používanie smerníc na určenie prístupu k hostiteľovi;
  • Možnosti - umožňuje používanie smerníc na prácu s určitými špecifickými funkciami adresárov;
  • Všetko je vyššie uvedené spolu;
  • Žiadne - žiadne z vyššie uvedených dohromady.

Objednávky. možnosti:

  • Odmietnuť, Povoliť - Obmedzenie je definované pred smernicou Povoliť, prístup je povolený v predvolenom nastavení, okrem hostiteľov, ktoré sú uvedené v nasledujúcom riadku po Zamietnuť z reťazca;
  • Povolenie, Povolenie - Povoliť je definované pred smernicou Odmietnuť, prístup je odmietnutý v predvolenom nastavení, s výnimkou hostiteľov, ktoré sú uvedené v nasledujúcom nasledujúcom Po povolení od;
  • Vzájomné zlyhanie - povolené sú iba hostiteľské počítače, ktoré nie sú v Zamietnutí a sú prítomné v Povoliť.

Na základe všetkých vyššie uvedených krokov sa pokúste nakonfigurovať server. V súbore httpd.conf existuje direktíva adresára v predvolenom nastavení v dvoch prípadoch -   a , Prvá možnosť by sa nemala dotknúť, takže v druhej možnosti nastavte parametre takto:

  Možnosti Referencie FollowSymLinks AllowOverride Žiadne Objednať povoliť, zakázať Povoliť od všetkých

Inými slovami, pre priečinok C: / www a všetky jeho podpriečinky sú vybraté nasledujúce parametre:

  • Z možných funkcií existujúceho servera sú povolené indexy v adresároch a odporúčania prostredníctvom symbolických odkazov;
  • Možnosť parametrického prepísania pomocou súborov .htaccess úplne chýba, avšak vzhľadom na to, že máte úplný prístup k serveru, nie je aktuálne - všetko sa dá nakonfigurovať prostredníctvom httpd.conf;
  • Prístup na webový server je povolený pre všetkých hostiteľov.

Teraz uložte súbor httpd.conf a reštartujte aplikáciu Apache s aplikáciou Apache Monitor alebo použite príkaz restartu apache -k na príkazovom riadku. Konfigurácia koreňového priečinka stránky je dokončená.

Mali by ste skontrolovať, či ste urobili všetko správne. Vytvorte jednoduchú webovú stránku v priečinku C: \\ www, otvorte prehliadač a zadajte http://127.0.0.1/ваша_созданная_страница, Stránky by sa mali otvoriť. V opačnom prípade by ste mali správne skontrolovať všetky zmeny v súbore httpd.conf.

Ak sa stránka úspešne otvorila, existuje možnosť, že namiesto cyrilských znakov uvidíte nečitateľné znaky. Môžu byť zobrazené z dvoch dôvodov. Po prvé, webový server dáva vášmu prehliadaču, ktorý požadoval stránku, predvolené kódovanie. Po druhé, tak podivne, toto cyrilské kódovanie nie je.

V prípade, že príslovečná Internet Explorer v takom prípade určuje kódovanie samotnej stránky, potom napríklad Mozilla Firefox a Opera, aby tieto akcie nemal sklon a spôsob vydávania kódovania prehliadača ručne, je ťažko pohodlné. Preto musíte nakonfigurovať aplikáciu Apache na odoslanie predvoleného kódovania, ktoré potrebujete.

Nájdite v súbore httpd.conf riadok začínajúci na AddDefaultCharset. S najväčšou pravdepodobnosťou je tam uvedený kód ISO-8859-1, v ktorom nie sú žiadne cyrilické symboly. Zmeňte ISO-8859-1 na Windows-1251, uložte súbor a reštartujte Apache. Teraz správne zobrazenie ruského jazyka na vašich stránkach bude fungovať v každom prehliadači.

Na serveri Apache je ľahké konfigurovať viacero lokalít. Adresy, ktoré môžete použiť pre ne, sú 127.0.0.2, 127.0.0.3 atď. Súčasne bude v sieti viditeľná len tá, ktorá je predvolenou lokalitou (127.0.0.1), ale toto nie je rozhodujúce pre lokálnu prácu. Časť súboru httpd.conf, v ktorej nakonfigurujete všetko potrebné na to, je na samom konci a nazýva sa VirtualHosts.

Ak chcete pridať ďalší web, vytvorte si adresár, ktorý sa používa ako jeho koreň, napríklad C: \\ www2. Za predpokladu, že lokalita bude reagovať na adresu 127.0.0.2, uveďte jej názov site911 a na samom konci sekcie VirtualHosts pridajte nasledujúce riadky:

  ServerAdmin [chránený emailom]  ServerName site911 DocumentRoot "C: / www2" ScriptAlias ​​/ CGI / "C: / www2 / CGI /" ErrorLog "C: /www2/error.log" CustomLog "C: /www2/custom.log" spoločné

Reštartujte server Apache. Zadaním 127.0.0.1 do panela s adresou sa dostanete na svoju prvú miestnu lokalitu a napíšete 127.0.0.2 na druhú lokálnu lokalitu. Treba mať na pamäti, že v každom konte VirtualHosts sa môžu používať úplne všetky smernice webového servera Apache, aby ste mohli prispôsobiť každú stránku v hĺbke.

Výsledok

Inštalácia a konfigurácia je dokončená a teraz môžete úplne začať študovať fungovanie servera Apache v praxi.

Ak sa rozhodnete, aby sa vyrovnali so správou webov, ďalším krokom by mala byť štúdia väzy Apache PHP MySQL, pretože bez systému pre správu databáz, ako aj bez podpory jedného z najpoužívanejších jazykov programovania webu a webový nástroj pre správu systému MySQL nie je nepracuje žiadny server na celom svete. Ako sa hovorí, " ťažké učiť, ale ľahko bojovať».

Prajeme veľa šťastia pri štúdiu tohto náročného, ​​ale zaujímavého biznisu!