3. Článek - Instalace Apache 2.2.19+MySQL 5.5.13+PHP 5.3.8+phpmyadmin 3.4.3.1 (+video k tomuto článku)

 2011-07-17 00:00:00
 Dmitry Burobin
Dneska konečně nainstalujeme localhost na Váš počitač.

Co rozebereme:

1) Odkud a co stáhnout.
2) Jak spravně nainstalovat.
3) Spravné nastavení konfiguračních souborů.
Série článků:
1) Instalace Apache 2.2.19+MySQL 5.5.13+PHP 5.3.8+phpmyadmin 3.4.3.1 (+video k tomuto článku).
2) Doplnění ke třetímu článku. Alternativní metoda instalace lokálního serveru “PHP Developer Pack” a instalace na Linux.

Na konci článku jsem přidal video, ve kterém provádim instalaci na Windows 7

Co to je?
Co to vlastně je localhost, to je imitace Internetového prostředí ve kterým budeme zkoušet naše aplikace a k tomu nebudeme potřebovat připojení na Internet. Budeme potřebovat akorat nainstalovat tyto programy PHP(jazyk ve kterým budeme psát), MySQL(databaze),Apache(to je vlastně virtualní server) a phpmyadmin(to je prostředí, které budeme používat k tvorbě tabulek pro MySQL).

Instalačky:

Všechny instalačky stáhneme z oficiálních zdrojů(možna, že jsou už novější verze, stahujte je):
- PHP 5.3.13 najdete zde, stáhneme si php-5.3.13-Win32-VC9-x86.zip archiv nebo novější
- Mysql si stáhnete odsud, tuto instalačku Windows (x86, 32-bit), MSI Installer
- Apache 2.2.19, tady stáhneme tuto instalačku: Win32 Binary including OpenSSL 0.9.8r (MSI Installer): httpd-2.2.19-win32-x86-openssl-0.9.8r.msi

Před samotnou instalaci si vytvoříme složku třeba server na disku C, to je úplně jedno kde si ji vytvořite, akorat nezapomínejte měnit cestu kam to budete instalovat po mně, protože budu ukazovat právě disk C a složku server.

Apache2.2


Začneme instalaci Apache, spustíme instalační soubor. V prvním okénku jenom klepneme dál, pak se souhlasíme s licenčnimi pravidly a uvidíme okno (Server information) vyplnime ho následovaně:


toto jsou jen informativní parametry, které budou odeslané jestli nastane chyba. V dalším okně vybereme typ instalace pro nás to bude Custom, protože chceme změnit cestu. Ted´ je před Vámi tohle:



změnime cestu instalace na náši C:/server/Apache2.2


klepneme dál a Install.
A máme nainstalovaný virtuálni server, ted´ restartujte počítač.
Po úspěšné instalaci by se Vám měla objevit tahle ikonka.

jestli je v ní zelená šipka tak je vše správně udělaný, pokud je v ní červený obdélníček, zkuste provést instalaci ještě jednou, když i tohle nepomůže tak mi napište zkusíme to nějak naladit. A taky zkuste zadat do browseru http://localhost nebo přímo ip adresu, na které se nacházi localhost tudiž 127.0.0.1 a mělo by se vyvést na obrazovku

It works!


Instalace PHP

Pokračovat budeme tím, že rozbalime archiv s php do složky server, jako cestu ukažeme C:/server/php

Ladění konfiguračních souborů php a Apache


Otevřeme soubor httpd.txt, který se nacházi na adrese C:/server/Apache2.2/conf, tohle je konfigurační soubor Apache, musíme v něm udělat par změn.(nebudu ho celý popisovat jenom to co budeme měnit)

První změnou bude to, že ho spojime s php a to tak, že nastavime php jako modul Apache najděte řádky 60 až 129 v nich se připojuji moduly a vložte nakonec tohoto bloku, tudiž na řádek 130 toto LoadModule php5_module "c:/server/php/php5apache2_2.dll".

Druhou změnou bude to, že ukážeme Apache, kde se nacházi konfiguračni soubor php (php.ini) ,vložime tento řádek PHPIniDir "C:\server\php\php.ini" hned po tom, kde jsme nastavovali modul, takže na 131 řádek.

Třetí bude to, že vytvořime složku, kde se budou nacházet WEB-složky (zdrojové soubory) a odkud Apache je bude načítat do browseru. Takže vytvořte složku www (nebo ji nazvete jak chcete) v složce server. V konfiguračním souboru httpd najdeme řádek
<?php

DocumentRoot "C:/server/Apache2.2/htdocs" 

?>
a vyměnime ho na
<?php

DocumentRoot "C:/server/www" 

?>
o trošku níž bude odstavec
<?php

<Directory "C:/server/Apache2.2/htdocs">

#

# Possible values for the Options directive are "None", "All",

# or any combination of:

#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

#

# Note that "MultiViews" must be named *explicitly* --- "Options All"

# doesn't give it to you.

#

# The Options directive is both complicated and important.  Please see

# http://httpd.apache.org/docs/2.2/mod/core.html#options

# for more information.

#

Options Indexes FollowSymLinks



#

# AllowOverride controls what directives may be placed in .htaccess files.

# It can be "All", "None", or any combination of the keywords:

#   Options FileInfo AuthConfig Limit

#

AllowOverride None



#

# Controls who can get stuff from this server.

#

Order allow,deny

Allow from all



</Directory>

?>
trochu ho upravíme
<?php

<Directory "C:/server/www">

#

# Possible values for the Options directive are "None", "All",

# or any combination of:

#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

#

# Note that "MultiViews" must be named *explicitly* --- "Options All"

# doesn't give it to you.

#

# The Options directive is both complicated and important.  Please see

# http://httpd.apache.org/docs/2.2/mod/core.html#options

# for more information.

#

Options Indexes Includes FollowSymLinks MultiViews



#

# AllowOverride controls what directives may be placed in .htaccess files.

# It can be "All", "None", or any combination of the keywords:

#   Options FileInfo AuthConfig Limit

#

AllowOverride All



#

# Controls who can get stuff from this server.

#

Order allow,deny

Allow from all



</Directory>

?>
zase změnime cestu, kde se budou nacházet WEB-složky, pak zaměnime tenhle řádek Options Indexes FollowSymLinks na Options Indexes Includes FollowSymLinks MultiViews.

Ted’ Vám vysvětlím co znamenají jednotlivá slova.
- Indexes nám povoli listing složky i když v ní neni index soubor třeba(index.html).
- Includes povoli funkce jako jsou (include) ve zdrojovém kodu (nejspiš ještě nevite co děla funkce include, to Vám povím později).
- FollowSymLinks to něco jako ikonky(shortcut) v Windows. Umožňuje odesílat fajly, které nejsou fyzicky v daném adresáři, ale jsou označený jako (symbolic link).
Toto jsou hlavní body.

Poslední co jsme zaměnili je AllowOverride None na AllowOverride All, tato funkce umožňuje překrývat nastavení, které dělamé ted´ v httpd.txt, pomoci souboru .htaccess(co dělá ten soubor vám povím v jiném článku, protože to je velmi důležita součast každého webu).
Další věc kterou budeme měnit je tento blok:
<?php

<IfModule dir_module>

DirectoryIndex index.html 

</IfModule>

?>
přidame toto:
<?php

<IfModule dir_module>

DirectoryIndex index.html index.htm index.php index.php5

</IfModule>

?>
dělame to proto, aby se načítali stránky s index souborem s koncovkami html,htm a php.

Tak a poslední věc, najdeme blok začinající přiblížně 363 řádek a po těchto řádcich
- AddType application/x-compress .Z
- AddType application/x-gzip .gz .tgz

vložíme ještě několik

- AddType application/x-httpd-php .php
- AddType application/x-httpd-php-source .phps
- AddType application/x-httpd-php phtml php
tím řekneme, aby apache zpracovávál fajly s rozšiřením php.

Restartujeme Apache, jestli jste neudělali nějakou chybu tak by se Vám měla objevit zelená šipka.

Ted´ nakonfigurujeme soubor php.ini, ten se nacházi na adrese C:/server/php/php.ini-developmen. Zaprvé ho přejmenujeme na php.ini, takže jenom odstranime koncovku DEVELOPMENT. Pak najdeme řádek 809 ; extension_dir = "ext" a změníme ho na extension_dir = "C:\server\php\ext", to je cesta kde se nacházi všechna rozšíření.
A poslední co změníme bude, že zapneme některá rozšíření. Začínaji se od řádku 947, funguje to tak, že když smažeme ; na začátku řádku, tak se to rozšíření aktivuje. Zapneme tyto rozšíření:

- extension=php_gd2.dll
- extension=php_mbstring.dll
- extension=php_mysql.dll
- extension=php_mysqli.dll

Co dělji jednotlivá rozšíření můžete najit na adrese http://www.php.net/manual/en/install.windows.extensions.php

Ověříme, zda všechno funguje správně. Vytvořte soubor index.php s obsahem
<?php
phpinfo();
?>
a uložte ho do složky www. Otevřeme tento soubor v prohlížeči http://localhost/. Měla by se Vám objevit informace o serveru a zapnutých modulech.

MySQL

No a poslední věc, kterou nainstalujeme bude databaze MySQL, samotna instalace je velice jednoducha. Zpust´te instalačku, mačkejte dál, až do okna kde vyberete custom způsob instalace a změníte cestu na C:/server/MySQL:

a date install. Dal se objevi toto okno:

date jenom dva krát next a pak finish. Mělo by se Vám otevřit okno MySQL Server konfiguraci, na prvním okně zmačkneme next - na druhým taky - pak vybereme Detailed Configuration - dál Developer Machine - Multifunctional Database - Next - Decision Support - Next - tady vybereme Manualní způsob nastavení(poslední možnost) a charset utf8 - Next - v tomto okně nastavíme heslo pro přistup k databázi(pole Current root password nechejte volné) - Execute.
MySQL server máme nainstalovaný, akorat ještě musíme změnit jeden řádek v konfiguračním souboru. Otevřeme si my.ini, který se nacházi zde C:/server/MySQL/my.ini a zaměnime 77 řádek datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/" na datadir="C:/server/MySQL/Data/".

Tím jsme ukončili instalaci lokálniho serveru
Ale to není vše, ještě nainstalujeme prostředí, pomoci kterého budeme vytvářet tabulky a databáze v MySQL a to je phpmyadmin.

phpmyadmin

Stáhneme zip archiv phpMyAdmin-3.4.3.1-all-languages.zip, odsud http://www.phpmyadmin.net/home_page/downloads.php.
Rozbalime ho do složky www a přejmenujeme složku na phpmyadmin, aby nam fungoval tak si otevřeme soubor config.sample.inc, který se nacházi hned ve složce phpmyadmin, najdeme tyto řádky:
<?php

$cfg['blowfish_secret'] = ''/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */



/*

* Servers configuration

*/

$i 0;



/*

* First server

*/

$i++;

/* Authentication type */

$cfg['Servers'][$i]['auth_type'] = 'cookie';

.

.

.

?>
v prvním řádku doplňte heslo pro přístup pomoci cookie, můžete napsat cokoliv. Dál doplňime 3 řádky se jménem, heslem a způsobem připojeni. Jméno nechejte root, v pole password zadejte heslo, které jste zadávali při instalaci MySQL a způsob bude config, to znamená, že budeme furt připojeni k serveru (nebudeme muset pokaždé zadávat login a heslo). A posledné bude, že zakomentujeme auth_type cookie, to udělame dvěma lomítkami na začátku řádku.
Uložíme tento soubor jako config.inc.php, do stejného adresáře.
<?php

$cfg['blowfish_secret'] = 'abcd'/* YOU MUST FILL IN THIS FOR COOKIE AUTH! */

/*

* Servers configuration

*/

$i 0;



/*

* First server

*/

$i++;

/* Authentication type */

$cfg['Servers'][$i]['user']          = 'root';

$cfg['Servers'][$i]['password']      = '********'// use here your password

$cfg['Servers'][$i]['auth_type']     = 'config';

//$cfg['Servers'][$i]['auth_type'] = 'cookie';

?>
No a to je vše, ted´ zkusíme zda to funguje správně, zadejte do browseru http://localhost/phpmyadmin a mělo by se Vám otevřit prostředi pro práci s MySQL serverem.

Závěr

Takže konečně máme nainstalovaný lokální server a můžeme se pustit do programování.

P.S. opravujte chyby a podepisujte se na RSS.

Tu ještě vykládam konfigurační soubory, tak jak maji být správně nastavený a video:
- pro Apache httpd.conf
- pro php php.ini
- pro MySQL my.ini
- Videoinstalace localhost.rar
Poznámka: kdybyste se po restartování počítače nemohli dostat do phpmyadmin měli byste udělat toto:

1) upravit my.ini ( konfigurační soubor MySQL ), přidat do bloku [mysqld]

skip-grant-tables 

2) pak restartovat MySQL server a spustit mysql příkazový řádek ( /server/MySQL/mysql ) v něm, pak zadat:

flush privileges//nezapomeň na středník

//dále nastavíme heslo pro uživatele root

set password for root@localhost=password('mypassword'); 
a zase smazat skip-grant-tables a restartovat MySQL server.
Systém Orphus
Napište komentář.
Celkem komenrářů(76)
Sawipa - 2013-05-18  23:30:27
 editováno administratorem.
Admin - 2013-05-13  09:47:20
 Díky
Keyser Söze - 2013-05-12  19:43:14
 Návod hodnotím po obsahovej ale aj formálnej stránke ako veľmi dobý. Nenašiel som lepší.
Pre inštaláciu som použil:
------
APACHE
httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
MYSQL
mysql-installer-community-5.6.11.0.msi
PHP
php-5.4.15-Win32-VC9-x86.zip
PHPMYADMIN
phpMyAdmin-4.0.0-all-languages.zip
------
Funkcionalita po inštalácii bezproblémová.
Ďakujem...
Rona - 2013-03-21  20:49:26
 Stejný problém jako ostatní (nefunkční phpmyadmin - hláška: Chybí rozšíření mysqli. Prosím zkontrolujte nastavení PHP.)
Ostatní vše funguje - super návod. Vše mám nastaveno přesně podle návodů, několikrát zkontrolováno - bohužel nic !
Můžete mi, prosím, podrobněji vysvětlit (pro blbého) přesný postup jak chybu odstranit, jak co napsat do příkazového řádku ...včetně jak restartovat MySQL?
Díky
Admin - 2013-03-14  11:00:57
 Vyřešil jste to?
Marv - 2013-03-14  03:22:47
 Promiňte, nepozo
ost.
Marv - 2013-03-13  15:17:01
 Zdravím, phpMyAdmin hlásí:

Chybí rozšíření mysqli. Prosím zkontrolujte nastavení PHP.

V php.ini jsem nastavil extension_dir = "ext", restartoval server, ale žádná změna.

Napadá vás řešení?
Admin - 2013-01-30  19:46:31
 Zdravím,
zkus ho odstranít a zase nainstalovat. Vyskočila ti hláška na konci instalaci?
Pokud ano, tak proveď ty kroky co popisuji na konci článku v poznámce.
Pavel - 2013-01-30  17:38:37
 Dobrý den, mám problém s instalací mysql, při posledním kroku kdy se má spustit, mi to píše, že program neodpovídá.
Admin - 2013-01-20  14:02:05
 Zdravím,
ano mate pravdu v novějších verzich už je ten skript ve složce bin.

1) Přidala jste do konfiguračního souboru my.ini do bloku mysqld řádek skip-grant-tables ?
Marketa - 2013-01-20  02:58:57
 Ahoj, nastal mi problem, ze po restartu prestal fungovat phpmyadmin a podle navodu pisete, ze "2) pak restartovat MySQL server a spustit mysql příkazový řádek ( /server/MySQL/mysql ) v něm, pak zadat:" >> ale ja v te slozce MySQL zadny mysql nemam a ani vy to tam podle videonavodu nemate.
Soubor mysql.exe jsem nasla ve slozce bin, ale kdyz jsem pouzila prikaz "flush privileges; " .. napsalo mi to "ERROR 1227 (42000): Access denied; you need (at least one of) the RELOAD privilege(s) for this operation"
Prosim poradte
Admin - 2012-12-02  19:53:49
 Zdravím,
stáhnul jste špatnou instalačku, zkuste tuto php-5.3.19-Win32-VC9-x86.zip. To, že je pro x86 by nemělo vadit.
Tibor - 2012-12-02  17:20:48
 Ahojte , ja som v php subore nenasiel php.ni-developemen, ale ini-dist a ini-recommended, tak neviem ktory subor by som mal pepisat , v obidvoch sa nachadza riadok s "extension_dir ="
Stiahol som php 5.5.28-winx64.msi
Admin - 2012-11-21  18:01:28
 Ahoj,
podívej se na soubor php.ini jestli tam máš řádek extension=php_mysqli.dll a jestli náhodou před ním není středník.
Andrew - 2012-11-19  19:33:12
 Ahoj,
instaluji na pc AMP podle tvého návodu a vše je v pořádku až do okamžiku, kdy chci vyzkoušet phpmyadmin. Vyskočí mi hláška:

Chybí rozšíření mysqli. Prosím zkontrolujte nastavení PHP. .

Neví někdo, jak tento problém vyřešit?
Vše instaluji podle návodu a znovu jsem pečlivě zkontroloval všechna konfigurační nastavení a vše je OK, tak jak je v návodu.
Akio - 2012-08-08  16:19:16
 Nalezl jsem návod, no v mé složce phpmyadmin se nenacházejí některé složky oproti vašemu videu.. Jsou to contrib, pmd a scripts, místo toho tam mám navíc examples,, co s tím? Dají se tam dodat (stáhnout, eventuelně, kdyby jste mi je například poslal nějak, jdou tam dodat, nebo je třeba nějaká změna celková?)?
From Dmitry to Draffix - 2012-08-08  12:53:36
 Díky za připomínku, určitě to doplním.
From Dmitry to Akio - 2012-08-08  11:47:58
 
Jste geniální, jede to tato úprava stačí jednou nebo pravidelně??

Stačí jenom jednou)
Ohledně hlášky na spodku phpmyadmin: nemusíš to řešit a kdybys chtěl, tak se podívej na starší komentáře, už jsem to někomu psal, jak se to da nastavit.
Akio - 2012-08-07  23:33:08
 A co s mnou zminenou hlaskou v phpmyadmin ?? To se musi provest nebo ne ??
Draffix - 2012-08-07  23:23:29
 2Akio: Ne, kdyby ti ta hláška vyskočila tak mi věř, že to poznáš Je to ještě před vstupem do phpmyadmin. Pokud už jsi se tam přihlásil, tedy provedl to co Dmitry už doplnil, pak se o to již nemusíš starat. Je to jen poznámka pro ostatní, kteří na to mohou narazit, jako třeba já
<<[1] [2] [3] [4] >>
*v komentářich nesmíte používat sprostá slova a odkazy!!!Děkuji za pochopeni.