Apache+PHP+MySQL

Tento návod na inštaláciu tohoto klasického komba by vám mohol pomôcť pri prekonávaní niektorých problémov, na ktoré som narazil ja osobne. Možno vám ušetrím hodinku čítania install.txt a lúskania konfigurákov.

Písmo: A- | A+
Diskusia  (14)
Obrázok blogu

Ak sa orientujete vo svete webových serverov ako ryba vo vode, majte na pamäti, že píšem viac pre užívatelov čo chcú začať. A ak ste linuxák, ani nečítajte ďalej, toto je článok pre Win32 platformu. Linux mám rád, ale ešte som sa k web serveru pod ním nedostal. Ale skúsený linuxák si vie predsa bez problému previesť Win32 návod do reči tučniakov.

Dosť bolo hlúpych rečí na úvod. 

Čo je to Apache?

Obrázok blogu

Ak vás napadne vrtuľník, sklamem vás. Je to jeden z najlepších (ak nie najlepší) open source web server softwarov. JE zadarmo. Čiže nemusíte zaplatiť ani korunu a máte plnohodnotný web server. Web server je kus(y) softwaru ktoré sa starajú o obsluhu požiadavkov zahŕňajúcich zasielanie webových stránok, súborov a iné rôzne služby.

SkryťVypnúť reklamu
SkryťVypnúť reklamu
SkryťVypnúť reklamu
Článok pokračuje pod video reklamou
SkryťVypnúť reklamu
Článok pokračuje pod video reklamou

Jeho prácu si môžete v jednoduchosti predstaviť ako otroka (nie deamona) sediaceho za serverom čo vám posiela webovské stránky ktoré chcete nechať zobraziť vo vašom prehliadači. 

Načo je mi vlastne doma web server?

Nie každý ma permanetné pripojenie na internet, prípadne mu môže vadiť existujúca časová prodleva ( LAG ) medzi lokálnym strojom a serverom na ktorom by ste vo svete vyvýjali webovú aplikáciu. Mať taký webserver doma má svoje výhody. Kontrola a ntegrita.

A prečo nie, keď je to zadarmo. 

Kde ho zohnať? 

Na stránke projektu Apache http://httpd.apache.org/dist môžete stiahnuť distribúcie pre najrôznejšie platformy, nielen pre Windows.

SkryťVypnúť reklamu

Daľší postup je veľmi jednoduchý. Spustíte inštalátor (Win32) a Apacha si jednoducho a rýchlo nainštalujete. Stačí vam okolo 20MB diskového priestoru.

Obrázok blogu

Ak si inštalačný program vypýta informácie o serveru, vyplnte políčka nasledovne

Počas inštalácie si môžete nechať nainštalovať i zdrojové súbory, ale pokial nieste programátor v C/C++ a príbuznych jazykoch, táto položka vám môže byť ukradnutá. 

Nainštalované? A čo ďalej?

Teraz sa dostávame už k zaujímavejším krokom.

Server teraz počúva na porte 80 na vašom loopbacku. Loopback je vlastne spätná slučka, niečo ako sieťové rozhranie samého stroja k sebe samému. Akoby ste si hovorili sami niečo sebe. Docela jednoduchá predstava. O pojem port sa nestarajte ak vám nič nehovorí, je to nepotrebné info.

SkryťVypnúť reklamu

Zapnite svoj obľúbený prehliadač a napíšte jednu z týchto dvoch variánt do adress liny - „localhost“ alebo „127.0.0.1”, pravdaže bez uvodzoviek.  

Obrázok blogu

Mali by ste uvidieť niečo takéto

Apache beží, ako dlho?

Ak by sa nerozbehol, stačí spustiť príkazový riadok (Start->Run->napísať cmd). Do príkazového riadku napísať len cd cesta kde za cesta nahradíte cestu k súboru apache.exe. Už stací len napísať apache –k start a Apache sa vám spustí.

V prípade, že ho chcete alebo musite restartnúť, stačí napísať apache –k restart. V prípade zastavenia služby napíšte apache –k stop. Ak sa chcete dozvedieť viac, napíšte apache -k.

Záverečné úpravy kofiguračných súborov

SkryťVypnúť reklamu

Konfiguračný súbor je textový súbor, ktorý používa Apache pri štarte. Pomocou tohoto súboru nastaví dôležité hodnoty potrebné pre správny beh serveru. Tento súbor je velmi citlivý na zmeny a preto treba dávať pozor, čo, kde, kto premaže.

Konfiguračný súbor nájdete v podadresári conf koreňového adresára programu Apache a (napr C:\Program Files\Apache group\Apache\conf). Súbor sa volá httpd.conf.

Otvorte ho pre zápis. Až na nižsie popísané zmeny nechajte všetky ostatné hodnoty radšej na pokoji, pokiaľ si skutočne nieste istý čo robíte. 

Kroky úpravy

A) Nájdite reťazec Servername. Pred názvom nesmie byť bodkočiarka. Takéto riadky totiž inicializačný parser považuje za komentáre.  V tejto premennej sa nachádza meno servera pod ktorým Apache vystupuje. Keďže sa jedná o domáci a lokálny server, táto hodnota musí vyzerať nasledovne Servername localhost.

B) Druhou a poslednou zmenou v tomto odseku je DocumentRoot. V praxi sa jedná o lokálny adresár ktorý bude považovať Apache za koreňový. Rovnako ako pre Windows je koreňový adresár C:\ , tak bude vami zvolený adresár považovaný pre Apache za koreňový. Čize od neho sa vždy bude začínať.

Položku ktorú hladáme sa volá DocumentRoot. Táto položka býva nastavená na hodnotu C:\Program files\Apache group\Apache\htdocs, prípadne na inú hodnotu. 

Čiže sa reťazec DocumentRoot môžete dopísať akýkoľvek exitujúci adresár na vašom lokálnom disku.

U mňa to je napr

DocumentRoot "C:\Data\WebWork"  

Po uložení stačí reštartovať server a je dokonáno 

Čo je to PHP?

Obrázok blogu

PHP je tzv. server side HTML-embedded scripting language . PHP vie zbierať dáta, nielen z html formulárov, ale aj z databázi ( mSQL, MySQL, MS-SQL, ODBC, Oracle, PostgreSQL ...) a pomocou nich formovať výstup ktorým je <html>. Vie aj využívať širokú škálu protokolov IMAP, SNMP, NNTP, POP3 .  

V jednoduchosti si to môžete predstaviť ako súbor príkazov, ktoré na strane serveru (u nás je to Apache) budú spracované a server odošle už len výsledok. Pre pohodlnú prácu má PHP plno najrôznejších a užitočných funkcii (napr md5 ). Cykly a podmienky umožňujú krásne skriptovanie. Pravdaže prítomnosť premenných je neodlúčitelnou súčasťou.

A je to zas a znova zadarmo. Tak prečo nie. 

Kde a ako sa to dá stiahnuť? 

Na stránkach http://www.php.net/downloads.php, http://snaps.php.net/ nájdete viaceré verzie, od staručkej 2 až po stabilnú verziu 5. V prípade prostredia Win32 je inštalácia jednoduchá, i keď zas treba podstúpiť kroky nápravy v configuračných súboroch. 

V prípade, že si stiahnete inštalačný program, je postup velmi jednoduchý.

V prípade manuálnej inštalácie prekopírujte súbory (rozbalené) do nejakého adresára. Niečo na štýl C:\Program Files\PHP  

Keďže verzia 5 sa trošku odlišuje od predchádzajúcich verzií, popíšem úpravu konfigurákov zvlášť. 

PHP4 

Potrebujete pridať tieto tri riadky 

ScriptAlias /php/ "c:/program files/php/" (Windows)
Action application/x-httpd-php "/php/php.exe" (Windows)
AddType application/x-httpd-php .php 

PHP5

Pre PHP5 sa zmení len znenie druhého riadku na

 Action application/x-httpd-php "/php/php.exe-cgi.exe" 

Pravdaže každý na miesto kde patrí, teda hľadajte kde sa nachádzajú podobné riadky. ^_^

Pri položke ScriptAlias si treba dať pozor aby ste zadli správnu cestu k PHP, čiže tam kam ste ho nakopírovali, prípadne nainštalovali. 

Pravdaže treba reštartnúť server. 

Ako test môžete napísať jednoduchý php script. Do súboru test.php napíšete len riadok

<?php phpinfo() ?>

Obrázok blogu

Ak je všetko v poriadku uvidíte niečo nasledovné

V základnom nastavení má PHP vypnuté tzv globálne registrované premenné.

Ak by ste sa při programovaní divili, že nemáte prístup k premenným z adress liny, teda premenným čo sú za ? v linku vašej stránky, máte vypnutú túto možnosť.

Čiže premenne $Tom a $Mot nebudú existovať (nebudú registrované) v prípade, že link bude vyzerať aj takto http://localhost/index.php?Tom=1&Mot=2 .

Položku ktorú hladáme je register_globals. Stačí ju zeniť na On a je to vyriešené

register_globals = On

MySQL

Obrázok blogu

MySQL je rýchly, multivláknový, multiužívatelský databázový server. Je postavený na princípe SQL, a myslím, že vycháadza z SQL98 (teda posledné MySQL ).

A zase je to zadarmo. 

Prečo mi je ďalší server? 

Nech napíšete akokoľvek dobrý PHP kód, príjde i na vás mráz potreby tzv relačnej databáze. Relačná databáze je v princípe tabulkový systém poodbný Excelu. Ale na rozdiel od excelu aj niečo dokáže. Ale je to hlavne o tabuľkách a vzťahoch medzi nimi a hlavne medzi dátami.

Ak je záujem o túto tému, k MySQL je krásne dlhá dakumentácia. ktorú by si každý mal prečítať. 

Kde to stiahnem a za koľko? 

MySQL je zadarmo. Nezapltíte ani korunku. A stiahnuť si môžete velmi pekný inštalačný program na http://www.mysql.com/Downloads/.

Inštalácia je velmi intuitívna a pohodlná. Doporučoval si stiahnuť aj MySQL administration tool.

Dôležitá je úvodné nastavenie, ku ktorému vás MySQL server automaticky vyzve hneď po inštalácii.

Je to nainštalované. A? 

V tomto kroku môže nastať jedno nemilé prekvapenie a to, že vám PHP vyhlási že nepozná funkcie pre prácu s MySQL (napr mysql_connect(...);). 

Doležité je teraz, či ste si nainštalovali PHP z inštalačného programu alebo ste si ho nakopírovali zo zip suboru - manuálna inštalácia. 

Ako na inštalovanú verziu 

Problém tkvie v tzv. Extensions. Sú to knižnice PHP pre narábanie s najrôznejšími databázami, protokolmi a inými vylomenimami.

Extensions, čize .dll súbory sa vám pravdepodobne nenaištalujú, preto si treba stihanuť najposlednejšiu verziu PHP, napríklad zo stránky http://snaps.php.net/ a Rozbaliť si ju niekam bokom.

Predpokladám, že ste si nainštalovali Apache 1.3..., ale aj keby Apache 2.1, nevadí.

Zo rozbaleného zip súboru vyselektujeme súbory  

 php5apache2.dll(apache2)
 php5ts.dll(php5)

 php4ts.dll(php4)
 php_mysql.dll
 libmysql.dll
 libmysqli.dll(nemusí byť) 

Zaobchádzanie s touto množinou súborov môže byť dvojaké.

Najednoduchšia možnosť je nahrať ich do adresára C:\Windows\System32

V druhom prípade stačí nahrať súbory do adresára kam bolo nainštalované PHP.

Configuračný súbor Apacha (httpd.conf) v prípade apache2 v kombinácii s PHP5 třeba doplniť o riadok

LoadModule php5_module "c:/php/php5apache2.dll" . V udovdzovkách treba uviesť presnú cestu k php5apache2.dll 

(niesom si úplne istý či nebude treba aj riadok PHPIniDir "c:/php" , kde je v uvodzovkách cesta k PHP, používam totiž Apache 1.3) 

V prípade naloženia so súbormi prípadom 2, musíme zmeniť konfiguračný súbor PHP.ini

Nájdeme riadok ;extension=php_mysql.dll a odstránime ; na začiatku.

Riadok s extension_dir by mal vyzerať extension_dir = "./"

Ako na manuálne inštalovanú verziu 

V prípade, že ste robili manuálnu inštaláciu, stačí zmeniť v php.ini riadky extension_dir na

extension_dir = “C:\Program files\PHP\ext” kde v uvodzovkách je cesta k nakpírovným php súborom a podadresáru ext.

A riadok ;extension=php_mysql.dll treba zmeniť na extension=php_mysql.dll

Ak máte php5 a Apache2 pozrite si časti pojednávajúce o tomto v predchádzajúcom odstavci. 

Konec?

Ok, mne to beží. Dufam, že aj vám. Ale kto neskúša nerozchodí to.

A výsledne náklady? Nula korún. Dobré nie? A to vdaka GNU/GPL. Aspon daky prinos J.

Autor neručí za žiadne info ktoré tu prezentoval. Je rád, že jemu to beží, veď sú to rady for free.

Tomáš PLCH

Tomáš PLCH

Bloger 
  • Počet článkov:  16
  •  | 
  • Páči sa:  0x

Ešte stále som matfyzák "_". Som divný človek, často až príliž zahĺbený do myšlienok ktorým nerozumiem. Rád hľadám chyby na sebe i na ľudoch. Nechápem spoločnosť a neverím ľuďom, čo si myslia, že tvoria dejiny, poznajú božiu vôľu a príliž často používajú slovo "milovať".Zbožňujem adrenalín, dobré víno a kvalitný maskáč. Zoznam autorových rubrík:  SúkromnéNezaradené

Prémioví blogeri

Post Bellum SK

Post Bellum SK

92 článkov
Martina Hilbertová

Martina Hilbertová

50 článkov
Marcel Rebro

Marcel Rebro

147 článkov
Pavel Macko

Pavel Macko

189 článkov
INESS

INESS

109 článkov
reklama
reklama
SkryťZatvoriť reklamu