× Aktuálně z oboru

Programátoři po celém světě dnes slaví Den programátorů [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]
Celá zprávička [ clanek/2018091300-programatori-po-celem-svete-dnes-slavi-den-programatoru/ ]

Instalace nejnovější verze Apache 2.4, PHP 7.3, MariaDB 10.3 a Memcached na Windows 10

[ http://programujte.com/profil/4089-zdenek-vecera/ ]Google [ https://plus.google.com/+ZdenekVecera?rel=author ]       16. 9. 2019       3 434×

Buďte při vývoji efektivní! Pomocí tohoto návodu během chvíle vytvoříte ze svého počítače lokální webový server. Vyzbrojíte jej vším, co budete při práci potřebovat: Apache 2.4, PHP 7.3, MariaDB 10.3 a Memcached. Je to plná polní pro webové vývojáře s Windows 10. Navíc poradíme, jak mít na localhostu více projektů pomocí VirtualHost.

Nainstalujte si webový server Apache 2.4 se skriptovacím jazykem PHP 7.3 přímo na svém počítači s Windows 10. K tomu si během pár vteřin přidejte databázový server MariaDB 10.3 a Memcached.

A pro fajnšmekry jsme přidali i návod na „VirtualHost“, aby mohli provozovat více domén s vlastními DocumentRoot“: http://tronlaserarena.cz.h a http://devtea.cz.h, oboje pěkně na localhostu.

Instalace PHP 7.3

Vytvořte hlavní adresář:

C:\dev

A do něj vytvořte adresář pro webové stránky:

C:\dev\localhost_www

Stažení PHP 7.3

Nejnovější verzi PHP 7.3 stáhněte z oficiálních stránek [ http://windows.php.net/download/ ], najdete ji dole jako „PHP 7.3 (7.3.x)“, zip u varianty „VC15 x86 Thread Safe“.

Vytvořte adresář:

C:\dev\php73

a rozbalte do něj obsah staženého archivu.

Konfigurace PHP 7.3

Nejprve jděte do adresáře s rozbaleným PHP a přejmenujte konfigurační soubor:

C:\dev\php73\php.ini-development

na:

C:\dev\php73\php.ini

a zrovna jej otevřete v textovém editoru, abychom upravili některé parametry.

Spolu s PHP je přibalena i spousta rozšíření. Nejsou ale automaticky načítána, takže je třeba ručně zvolit, která chceme zavádět. Nejprve musíme určit místo, kde se rozšíření nacházejí. V konfiguračním souboru najděte následující řádek:

; extension_dir = "ext"

Odstraňte z jeho začátku středník a upravte jej následovně:

extension_dir = "C:\dev\php73\ext"

Nyní určíme, která rozšíření budeme skutečně zavádět.

Odkomentujte (smažte středníky na začátku řádku) u následujících rozšíření:

;extension=curl
;extension=gd2
;extension=gettext
;extension=imap
;extension=mbstring
;extension=exif
;extension=mysqli
;extension=openssl
;extension=pdo_mysql
;extension=sockets
;extension=xmlrpc

Doporučuji také následující parametry navýšit takto:

max_execution_time = 300000
memory_limit = 256Mupload_max_filesize = 200M

Instalace Apache 2.4

Nejnovější Apache 2.4 přináší několik novinek, především ve způsobu zápisu dnes již zastaraléhodeny from all“, kterým můžete zakázat přístup do adresáře. Uvedený zápis díky modulu mod_access_compat.so, který zachovává zpětnou kompatibilitu, naštěstí funguje i v nové verzi, takže se „dva-čtyřkového“ Apache nemusíte obávat. Pokud vás zajímají rozdíly mezi Apache 2.2 a 2.4, doporučujeme navštívit tento dokument [ http://httpd.apache.org/docs/current/upgrading.html ].

Stažení Apache 2.4

Apache Lounge se stará o vytváření binárních balíčků pro Windows (nikoli přímo Apache Software Foundation). Jděte proto jeho oficiální stránky [ http://www.apachelounge.com/download/additional/ ], vlevo v nabídce vyberte VC15 a stáhněte nejnovější verzi „Apache 2.4.x Win32“ – stáhněte 32bitovou variantu, i když máte 64bitová Windows.

Ze staženého archivu zkopírujte celý adresář „Apache2“, takže na disku budete mít:

C:\dev\Apache24\

Příprava konfiguračního souboru

V textovém editoru přejmenujte konfigurační soubor httpd.conf:

C:\dev\Apache24\conf\httpd.conf

na httpd_php73.conf.

Měli byste mít následující soubor:

C:\dev\Apache24\conf\httpd_php73.conf

Úprava konfiguračního souboru

Ve výše připraveném konfiguračním souboru určíme, které moduly budeme chtít zavádět. Odkomentujte (smažte mřížku na začátku řádku) u následujících modulů:

#LoadModule access_compat_module modules/mod_access_compat.so
#LoadModule alias_module modules/mod_alias.so
#LoadModule deflate_module modules/mod_deflate.so
#LoadModule expires_module modules/mod_expires.so
#LoadModule filter_module modules/mod_filter.so
#LoadModule headers_module modules/mod_headers.so
#LoadModule rewrite_module modules/mod_rewrite.so

Nastavíme adresář, ve kterém se nachází rozbalený Apache (ServerRoot). Najděte následující řádek:

Define SRVROOT "c:/Apache24"

a upravte jej následovně:

Define SRVROOT "c:/dev/Apache24"

Nastavíme DocumentRoot serveru, který se načte po zadání adresy http://localhost [ http://localhost ] do webového prohlížeče. Najděte proto tento řádek:

DocumentRoot "${SRVROOT}/htdocs"

a změňte jej takto:

DocumentRoot "C:/dev/localhost_www"

Hned pod tím se nachází nastavení specifických pravidel pro daný adresář, proto najděte následující řádek:

<Directory "${SRVROOT}/htdocs">

a změňte ho následovně:

<Directory "C:/dev/localhost_www">

Nyní povolíme zpracování načítání souborů .htaccess. O pár řádků níže (v téže části  <Directory "C:/dev/localhost_www">...</Directory>) změňte následující řádek:

AllowOverride none

takto:

AllowOverride All

Aby se nám načítal index.php, aniž bychom jej museli zadávat do adresního řádku prohlížeče, najděte tento řádek:

DirectoryIndex index.html

A upravte jej následovně:

DirectoryIndex index.html index.htm index.php

A přidejte následující řádky pro zpracování php souborů: 

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

Dále přidejte zavedení podpory PHP (LoadModule) a určíme, kde se má hledat konfigurační soubor php.ini (PHPIniDir):

LoadModule php5_module "C:/dev/php73/php7apache2_4.dll"
PHPIniDir "D:/Program Files/dev/php73"

A na úplný konec doporučuji přidat následující řádky, které vám pomohou se vyhnout pomalému načítání stránek na localhostu s Apache 2.4, PHP 5.3, Windows 8, 10 a IPv4/IPv6 [ https://blog.zdenekvecera.cz/item/3452-pomale-nacitani-stranek-na-localhostu-apache-2-4-php-5-3-windows-8-a-ipv4ipv6/ ].

AcceptFilter http none
AcceptFilter https none

Proměnné prostředí

Jako poslední krok je třeba nastavit Proměnné prostředí. Klikněte na nabídku Start ve Windows vlevo dole, pomocí hledání vyhledejte „Upravit proměnné prostředí systému“ a klepněte na pravé dolní tlačítko „Proměnné prostředí…“. V dolní části „Systémové proměnné“ najděte řádek „Path“, klepněte na něj myší a poté klepněte na tlačítko „Upravit…“.

Vedle „Hodnota proměnné“ se nachází textové pole, klepněte do něj a s textovým kurzorem jděte až na konec pole, kam připište následující.

Pomocí tlačítka „Nový…“ je třeba přidat dva následující řádky:

C:\dev\php73\
C:\dev\Apache24\bin\

Všechna otevřená okna poté pozavírejte klepáním na tlačítka „OK“, aby se změna uložila.

Instalace služby Apache a otestování konfiguračním souboru

Nyní se dostáváme k samotné instalaci Apache. Spusťte Příkazový řádek jako správce a zadejte do něj následující příkaz a stiskněte enter:

httpd.exe -k install -n "Apache24_php73" -f "C:\dev\Apache24\conf\httpd_php73.conf"

Službu jsme pojmenovali jako „Apache24_php73“ – můžeme si stejným způsobem nainstalovat více verzí Apache či PHP (a jejich kombinace), tak ať se v tom do budoucna vyznáme. Za parametrem -f předáváme adresu konfiguračního souboru pro danou službu Apache.

Pokud jste vše správně zadali, služba by se měla nainstalovat bez zbytečného povyku. Jestli se vyskytly nějaké chyby v konfiguračním souboru, můžete jej otestovat a problémy opravit (například špatně uvedené cesty do adresářů či volání neexistujících modulů atd.):

httpd.exe -t -f "C:\dev\Apache24\conf\httpd_php73.conf"

Jestli se vám podařilo službu úspěšně zavést, spusťte ji takto (teď je to nutné udělat ručně, po restartu počítače se už ale spustí sama):

httpd.exe -k start -n "Apache24_php73"

Takto lze službu ukončit:

httpd.exe -k stop -n "Apache24_php73"

Nebo později odinstalovat:

httpd.exe -k uninstall -n "Apache24_php73"

A restartovat:

httpd.exe -k restart -n "Apache24_php73"

Otestování, jdeme na to!

Vytvořte soubor:

C:\dev\localhost_www\index.php

Napište do něj tyto dva řádky a uložte:

<?php
phpinfo();

Nyní už stačí zadat do adresního řádku webového prohlížeče adresu http://localhost [ http://localhost/ ]. Pakliže je vše správně nastaveno, měla by vás uvítat stránka s informacemi o nastavení PHP, kterou nám vygenerovala funkce phpinfo().

Jestli se požadovaná stránka nenačetla, restartujte počítač. 

Manuály naleznete na oficiálních stránkách: Apache [ http://httpd.apache.org/docs/ ] a PHP [ http://www.php.net/manual/en/ ]

Pro pokročilé: VirtualHost pro provoz více „domén“ na localhostu

Ještě chvíli se zastavíme u Apache. Pokud pracujete na více projektech a chcete je mít všechny k dispozici lokálně a ve vlastním kořenovém adresáři (a třeba s odlišnou konfigurací), stačí sáhnout po VirtualHostech [ http://httpd.apache.org/docs/2.4/vhosts/examples.html ].

Pokud vám postačuje pouze jeden http://localhost, můžete tuto část přeskočit a plynule přejít k instalaci MySQL.

Představte si, že chcete mít kromě localhostu přístupné také domény „devtea.cz.h“ a „tronlaserarena.cz.h“ – pro přehlednost doporučuji ponechávat originální názvy domén a na konec připojit „.h“, což značí localhost.

Na konec konfiguračního souboru:

C:\dev\Apache24\conf\httpd_php56.conf

Přidejte:

<VirtualHost *:80>
    ServerName devtea.cz.h
    DocumentRoot "C:/dev/localhost_www/p/devtea.cz"
</VirtualHost>

<VirtualHost *:80>
    ServerName tronlaserarena.cz.h
    DocumentRoot "C:/dev/localhost_www/p/tronlaserarena.cz"    
</VirtualHost>

Pro každý záznam napřed specifikujeme osmdesátkový port, kořenový adresář (DocumentRoot) a název domény (ServerName).

Aby se nám správně načítal obsah i z původní domény localhost, přidejte ještě na konec souboru následující kód:

<VirtualHost *:80>
    ServerName localhost
    DocumentRoot "C:/dev/localhost_www"
</VirtualHost>

Soubor httpd_php73.conf uložte a restartujte Apache pomocí příkazového řádku:

httpd.exe -k restart -n "Apache24_php_php73"

Pro každou takovou „doménu“ musíte ještě přidat záznam do souboru „hosts“ (soubor je bez přípony), který se ve Windows 10 nachází v systémovém adresáři:

c:\Windows\System32\drivers\etc\hosts

Soubor hosts je chráněný, takže spusťte libovolný editor (postačí i Poznámkový blok) jako správce a přidejte do něj následující řádky:

127.0.0.1  localhost
127.0.0.1  devtea.cz.h
127.0.0.1  tronlaserarena.cz.h

Od teď vám budou fungovat nastavené localhostové domény.

Manuály naleznete na oficiálních stránkách: Apache [ http://httpd.apache.org/docs/2.4/vhosts/examples.html ]

Nyní ale jdeme pokračovat v instalaci databázového serveru... 

Instalace MariaDB 10.3

Instalace MariaDB je zcela bezproblémová. Stáhněte si oficiální instalátor [ https://downloads.mariadb.org/ ] a spusťte jej. Vše další odklikejte až do zdárného konce, po dokončení bude databáze plně k dispozici. Připojit se k ní můžete následujícími údaji:

Server: localhost (nebo 127.0.0.1)
Port: 3306
User: root
Password: vaše_heslo

Manuál naleznete na oficiálních stránkách: MariaDB [ https://mariadb.com/kb/en/library/documentation/ ]

Instalace XDebug

Instalace XDebug je díky šikovnému průvodci bezproblémová. Nejprve jděte na výpis phpinfo(), který máme dostupný na http://localhost [ http://localhost ]. Zobrazte si u stránky zdrojový kód (do stránky klepněte pravým tlačítkem myši), celý jej zkopírujte a zadejte jej do tohoto velkého textového pole [ http://xdebug.org/wizard.php ].

Poté klepněte na tlačítko „Analyse my phpinfo() output“, které se nachází pod polem. Průvodce zanalyzuje vaši instalaci a doporučí vhodnou verzi a úpravy.

V prvním kroku tedy stáhněte potřebnou dll knihovnu a umístěte ji do adresáře s rozšířeními /ext/, který je vypsán ve druhém kroku (je to adresář s php rozšířeními, tj. např. C:\dev\php56\ext).

Dále je třeba upravit hodnotu proměnné zend_extension“ v konfiguračním souboru php.ini (např. C:\dev\php56\php.ini), který je vypsán ve třetím bodě. Pokud soubor proměnnou „zend_extension“ vůbec neobsahuje (u první instalace), tak celý řádek zkopírujte (jak jej průvodce vypsal) a přidejte jej nakonec zmíněného souboru php.ini. Nezapomeňte změny uložit.

A nakonec restartujte Apache, opět třeba pomocí Příkazového řádku:

httpd.exe -k restart -n "Apache24_php56"

Manuál naleznete na oficiálních stránkách: XDebug [ http://xdebug.org/ ]

-->

Instalace Memcached

U instalace Memcached pro Windows je asi nejsložitější najít aspoň trochu aktuální a funkční verzi.

Stažení Memcachced

Pokud máte 64bitová Windows, stáhněte Memcached 1.4.4 [ http://s3.amazonaws.com/downloads.northscale.com/memcached-win64-1.4.4-14.zip ], pokud jedete na 32bitových, tak stáhněte Memcached 1.2.6 [ http://s3.amazonaws.com/downloads.northscale.com/memcached-win64-1.4.4-14.zip ]. V oficiálním repositáři sice už existují novější verze, ale ne pro Windows, takže se s těmito postaršími také spokojíme.

Vytvořte následující adresář:

C:\dev\memcached

a rozbalte do něj soubory ze staženého archivu.

Instalace služby Memcached

Spusťte Příkazový řádek jako správce, přejděte do složky:

C:\dev\memcachced\

a zadejte následující instalační příkaz a enter:

memcached.exe -d install

Nyní je Memcached nainstalovaný jako služba.

Spustit jej můžete příkazem (z adresáře C:\dev\memcachced\):

memcached.exe -d start

nebo ukončit:

memcached.exe -d stop

Po restartu počítače se služba Memcached spustí automaticky.

Nastavení PHP pro Memcache

Na stránce repozitáře PHP7-memcache-dll [ https://github.com/nono303/PHP7-memcache-dll/releases ] si stáhněte nejnovější verzi release.

Adresář rozbalte a najděte v něm následující soubor

/vc15/x86/ts/php-7.3.x_memcache.dll

Soubor přejmenujte na php_memcache.dll a zkopírujte jej do adresáře /ext/ s rozšířeními PHP (např. C:\dev\php73\ext).

Následně upravte konfigurační soubor php.ini (např. C:\dev\php73\php.ini) tak, že k rozšířením přidáte následující řádek:

extension=memcache

Pro správu Memcached si můžete stáhnout PHP aplikaci PHPMemcachedAdmin [ https://github.com/elijaa/phpmemcachedadmin ].

Manuál naleznete na oficiálních stránkách: Memcached [ http://memcached.org/ ]


Článek stažen z webu Programujte.com [ http://programujte.com/clanek/2019091500-instalace-nejnovejsi-verze-apache-2-4-php-7-3-mariadb-10-3-a-memcached-na-windows-10/ ].