Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Následující verze | Předchozí verze | ||
navody:prirucka:obsah [2007/11/28 21:47] – vytvořeno covex | navody:prirucka:web [2022/11/14 12:26] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | [[obsah|Hlavní stránka]] | ||
+ | ===== Webový server ===== | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ==== Instalace webového serveru Apache ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[instalace_aplikaci# | ||
+ | * Přečtěte také kapitolu [[http:// | ||
+ | |||
+ | //Apache// je pravděpodobně nejpopulárnější webový server používaný nejen pod //Linux//em ale také pod //OS Windows// a představuje jakýsi " | ||
+ | |||
+ | Pomocí následujících příkazů nainstalujete potřebné balíčky. | ||
+ | |||
+ | dnf -y install httpd | ||
+ | dnf -y install mod_ssl | ||
+ | dnf -y install httpd-manual | ||
+ | dnf -y install mod_perl | ||
+ | dnf -y install mod_auth_mysql | ||
+ | dnf -y install crypto-utils | ||
+ | dnf -y install mod_python | ||
+ | |||
+ | Službu '' | ||
+ | |||
+ | systemctl start httpd.service | ||
+ | | ||
+ | Funkčnost webového serveru ověříte pomocí odkazu [[http:// | ||
+ | |||
+ | |||
+ | ==== Instalace PHP ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[instalace_aplikaci# | ||
+ | * Přečtěte si kapitolu [[web# | ||
+ | |||
+ | //PHP// je programovací jazyk určený pro vývoj dynamických webových stránek. Je používán především v aplikacích, | ||
+ | |||
+ | Instalaci a spuštění //PHP// serveru lze provést pomocí následujících příkazů | ||
+ | |||
+ | dnf -y install php | ||
+ | dnf -y install php-mysql | ||
+ | systemctl restart httpd.service | ||
+ | | ||
+ | |||
+ | Pomocí příkazu | ||
+ | |||
+ | gedit / | ||
+ | |||
+ | otevřete soubor // | ||
+ | |||
+ | <?php phpinfo(); ?> | ||
+ | |||
+ | Soubor uložte. Funkčnost //PHP// serveru lze ověřit pomocí odkazu [[http:// | ||
+ | |||
+ | ==== Instalace MySQL (MariaDB) ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[instalace_aplikaci# | ||
+ | * Přečtěte si kapitolu [[databaze# | ||
+ | * Přečtěte si kapitolu [[databaze# | ||
+ | |||
+ | Server //MySQL// (MariaDB) spustíte pomocí | ||
+ | |||
+ | systemctl start mariadb.service | ||
+ | | ||
+ | |||
+ | **phpMyAdmin** - webové rozhraní databáze MySQL (MariaDB) jež je přístupné na adrese http:// | ||
+ | |||
+ | dnf install phpMyAdmin | ||
+ | |||
+ | ==== Tipy na Apache ==== | ||
+ | |||
+ | Pro odstranění podpisu serveru otevřete soubor '' | ||
+ | |||
+ | gedit / | ||
+ | |||
+ | a řádek | ||
+ | |||
+ | ServerSignature on | ||
+ | |||
+ | změňte na | ||
+ | |||
+ | ServerSignature off | ||
+ | |||
+ | Pod tento řádek přidejte | ||
+ | |||
+ | ServerTokens ProductOnly | ||
+ | |||
+ | Editovaný soubor uložte a restartuje //Apache// pomocí | ||
+ | |||
+ | systemctl restart httpd.service | ||
+ | | ||
+ | uživatelské rozhraní " | ||
+ | |||
+ | dnf -y install system-config-httpd | ||
+ | |||
+ | ==== Namapování adres URL k adresářům mimo /var/www ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[web# | ||
+ | |||
+ | Standardně je třeba webové stránky spravované serverem //Apache// umisťovat do adresáře ''/ | ||
+ | |||
+ | Do příkazové řádky zadejte | ||
+ | |||
+ | gedit / | ||
+ | |||
+ | a vložte následující řádky do nově vytvořeného souboru '' | ||
+ | |||
+ | Alias /URL-path / | ||
+ | | ||
+ | < | ||
+ | Options Indexes FollowSymLinks | ||
+ | AllowOverride All | ||
+ | Order allow,deny | ||
+ | Allow from all | ||
+ | </ | ||
+ | |||
+ | Uložte soubor '' | ||
+ | |||
+ | systemctl restart httpd.service | ||
+ | |||
+ | Funkčnost nastavení ověříte pomocí odkazu [[http:// | ||
+ | |||
+ | ==== Změna defaultního portu webového serveru Apache ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[web# | ||
+ | |||
+ | Standardně " | ||
+ | |||
+ | Následujícími příkazy zálohujeme soubor '' | ||
+ | |||
+ | cp / | ||
+ | gedit / | ||
+ | |||
+ | V souboru '' | ||
+ | |||
+ | Listen 80 | ||
+ | |||
+ | nahraďte ji řádkou | ||
+ | |||
+ | Listen 78 | ||
+ | |||
+ | uložte editovaný soubor a restartujte webový server pomocí | ||
+ | |||
+ | systemctl restart httpd.service | ||
+ | |||
+ | Funkčnost úpravy lze zkontrolovat pomocí odkazu [[http:// | ||
+ | |||
+ | |||
+ | ==== Vložení RSS do PHP v případě webového serveru Apache ==== | ||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[web# | ||
+ | * Přečtěte si kapitolu [[web# | ||
+ | |||
+ | //RSS// (**R**eally **S**imple **S**yndication) je rodinou webových formátů, které slouží k poskytování obsahu popř. shrnutí webových stránek spolu s odkazem na stránku obsahující kompletní obsah. //RSS// " | ||
+ | |||
+ | Předpokládejme, | ||
+ | |||
+ | Prostřednictvím příkazové řádky zadejte | ||
+ | |||
+ | wget -c http:// | ||
+ | mkdir / | ||
+ | tar zxvf magpierss-0.71.1.tar.gz -C / | ||
+ | mv / | ||
+ | rm -fr / | ||
+ | chown -R www-data: | ||
+ | gedit / | ||
+ | |||
+ | Do nově vytvořeného souboru '' | ||
+ | |||
+ | < | ||
+ | " | ||
+ | | ||
+ | <html xmlns=" | ||
+ | | ||
+ | < | ||
+ | | ||
+ | < | ||
+ | | ||
+ | <meta http-equiv=" | ||
+ | | ||
+ | <style type=" | ||
+ | / | ||
+ | /* | ||
+ | | ||
+ | */ | ||
+ | | ||
+ | body { | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | } | ||
+ | | ||
+ | h1 { | ||
+ | | ||
+ | | ||
+ | } | ||
+ | | ||
+ | /*]]>*/ | ||
+ | </ | ||
+ | | ||
+ | </ | ||
+ | | ||
+ | < | ||
+ | | ||
+ | <?php | ||
+ | | ||
+ | require_once ' | ||
+ | error_reporting(E_ERROR); | ||
+ | | ||
+ | $url = ' | ||
+ | $rss = fetch_rss($url); | ||
+ | | ||
+ | if ($rss) { | ||
+ | | ||
+ | echo "< | ||
+ | echo "<a href=$url>", | ||
+ | echo "</ | ||
+ | | ||
+ | | ||
+ | $url = $item[link]; | ||
+ | $title = $item[title]; | ||
+ | $description = $item[description]; | ||
+ | echo "< | ||
+ | echo "< | ||
+ | echo " | ||
+ | echo "</ | ||
+ | } | ||
+ | | ||
+ | } | ||
+ | | ||
+ | else { | ||
+ | echo "<a href=$url>", | ||
+ | } | ||
+ | | ||
+ | ?> | ||
+ | | ||
+ | </ | ||
+ | | ||
+ | </ | ||
+ | |||
+ | Editovaný soubor '' | ||
+ | |||
+ | |||
+ | ==== PHP Nástroje ==== | ||
+ | |||
+ | === Zend Framework === | ||
+ | |||
+ | Zend Framework je open-source sada nástrojů pro vývojáře webových aplikací. Slouží k efektivnímu ovládání aplikace, podpoře mnoha web technologií, | ||
+ | |||
+ | Tento návod pochází od JR z [[http:// | ||
+ | |||
+ | * Přečtěte si kapitolu [[obecne_poznamky|Obecné poznámky]]. | ||
+ | * Přečtěte si kapitolu [[instalace_aplikaci# | ||
+ | * Přečtěte si kapitolu [[databaze# | ||
+ | * Přečtěte si kapitolu [[databaze# | ||
+ | |||
+ | == Instalace Zend Framework == | ||
+ | |||
+ | Nainstalujte repozitář REMI | ||
+ | |||
+ | rpm -Uvh http:// | ||
+ | rpm -Uvh http:// | ||
+ | rpm -Uvh http:// | ||
+ | | ||
+ | **Minimální instalace ZF** (instaluje minimální množství souborů potřebných pro spuštění aplikace) | ||
+ | |||
+ | dnf --enablerepo=remi install php-ZendFramework | ||
+ | | ||
+ | **Plná instalace ZF** (obsahuje všechny dodávané knihovny, DOJO a JQuery, ukázky apod.) | ||
+ | |||
+ | dnf --enablerepo=remi install php-ZendFramework* --exclude php-ZendFramework-Db-Adapter-Oracle | ||
+ | |||
+ | // | ||
+ | |||
+ | **Vlastní instalace** | ||
+ | |||
+ | dnf --enablerepo=remi install komponenta_z_následujícího_seznamu | ||
+ | | ||
+ | php-ZendFramework:// | ||
+ | |||
+ | php-ZendFramework-Auth-Adapter-Ldap:// | ||
+ | |||
+ | php-ZendFramework-Cache-Backend-Apc:// | ||
+ | |||
+ | php-ZendFramework-Cache-Backend-Memcached:// | ||
+ | |||
+ | php-ZendFramework-Cache-Backend-Sqlite:// | ||
+ | |||
+ | php-ZendFramework-Captcha:// | ||
+ | |||
+ | php-ZendFramework-Db-Adapter-Firebird:// | ||
+ | |||
+ | php-ZendFramework-Db-Adapter-Mysqli:// | ||
+ | |||
+ | php-ZendFramework-Db-Adapter-Oracle:// | ||
+ | |||
+ | php-ZendFramework-Dojo:// | ||
+ | |||
+ | php-ZendFramework-Feed:// | ||
+ | |||
+ | php-ZendFramework-Gdata:// | ||
+ | |||
+ | php-ZendFramework-Ldap:// | ||
+ | |||
+ | php-ZendFramework-Pdf:// | ||
+ | |||
+ | php-ZendFramework-Search-Lucene:// | ||
+ | |||
+ | php-ZendFramework-Services:// | ||
+ | |||
+ | php-ZendFramework-Soap:// | ||
+ | |||
+ | php-ZendFramework-demos:// | ||
+ | |||
+ | php-ZendFramework-extras:// | ||
+ | |||
+ | php-ZendFramework-tests:// | ||
+ | |||
+ | == Vytvoření nového ZF projektu == | ||
+ | |||
+ | Zkontrolujte dostupnost příkazu zf a verzi Zend Framework | ||
+ | |||
+ | zf show version | ||
+ | | ||
+ | Přesuňte se do kořenového adresáře Vašeho serveru | ||
+ | |||
+ | cd / | ||
+ | | ||
+ | Pomocí příkazu zf vytvořte nový projekt | ||
+ | |||
+ | zf create project test-project | ||
+ | | ||
+ | Nakopírujte si soubory Zend do knihovny projektu | ||
+ | | ||
+ | cd / | ||
+ | cp -R / | ||
+ | | ||
+ | | ||
+ | Zkontrolujte obsah adresáře projektu a obsah knihoven | ||
+ | |||
+ | test-project | ||
+ | |-- application | ||
+ | | |-- Bootstrap.php | ||
+ | | |-- configs | ||
+ | | | ||
+ | | |-- controllers | ||
+ | | | ||
+ | | | ||
+ | | |-- models | ||
+ | | `-- views | ||
+ | | |-- helpers | ||
+ | | `-- scripts | ||
+ | | |-- error | ||
+ | | | ||
+ | | `-- index | ||
+ | | `-- index.phtml | ||
+ | |-- docs | ||
+ | | `-- README.txt | ||
+ | |-- library | ||
+ | | `-- Zend -> / | ||
+ | |-- public | ||
+ | | `-- index.php | ||
+ | `-- tests | ||
+ | |-- application | ||
+ | | `-- bootstrap.php | ||
+ | |-- library | ||
+ | | `-- bootstrap.php | ||
+ | `-- phpunit.xml | ||
+ | ---------------------------- | ||
+ | 16 adresářů, | ||
+ | |||
+ | Funkčnost zkontrolujete ve webovém prohlížeči na domovské url projektu [[http:// | ||
+ | |||
+ | firefox http:// | ||
+ | | ||
+ | ** Směrování (Routes)** | ||
+ | |||
+ | Index.php celého projektu je umístěn ve složce public. Je to jediný PHP soubor ve veřejně přístupné části projektu. V případě [[http:// | ||
+ | |||
+ | su - | ||
+ | gedit / | ||
+ | | ||
+ | Pomocí příkazů RewriteRule provedeme potřebné úpravy směrování v souboru .htaccess a uložíme je. Například | ||
+ | |||
+ | RewriteEngine On | ||
+ | RewriteCond %{REQUEST_FILENAME} -s [OR] | ||
+ | RewriteCond %{REQUEST_FILENAME} -l [OR] | ||
+ | RewriteCond %{REQUEST_FILENAME} -d | ||
+ | RewriteRule ^.*$ - [NC,L] | ||
+ | RewriteRule ^.*$ index.php [NC,L] | ||
+ | | ||
+ | Framework má mechanismus (router nebo-li směřovač), | ||
+ | |||
+ | **Virtuální host podle jména** | ||
+ | |||
+ | Pokud chcete nastavit jména virtuálního hostitele k projektu upravte soubor **hosts** | ||
+ | |||
+ | gedit /etc/hosts | ||
+ | | ||
+ | Řádek který začíná IP adresou 127.0.0.1 upravte tak aby obsahoval požadované adresy. Například | ||
+ | |||
+ | 127.0.0.1 | ||
+ | |||
+ | // | ||
+ | |||
+ | otevřeme soubor httpd.conf nebo vhosts.conf | ||
+ | :!: V případě ručního zápisu do httpd.conf můžete mít problém s povolením SELinuxu. Proto by se měl používat samostatný soubor konfigurace vhost / | ||
+ | |||
+ | gedit / | ||
+ | | ||
+ | a na konec souboru přidáme specifikaci vhost: | ||
+ | |||
+ | < | ||
+ | ServerAdmin lh@lh.cz | ||
+ | DocumentRoot / | ||
+ | </ | ||
+ | | ||
+ | < | ||
+ | ServerAdmin admin@testproject.org | ||
+ | DocumentRoot / | ||
+ | ServerName www.testproject.loc | ||
+ | ServerAlias testproject.loc | ||
+ | </ | ||
+ | |||
+ | // | ||
+ | |||
+ | restartujte server | ||
+ | |||
+ | systemctl restart httpd.service | ||
+ | | ||
+ | **Index** projektu by nyní měl být přístupný na adresách URL: | ||
+ | |||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | * http:// | ||
+ | |||
+ | **Homepage** bude přístupná pouze na adrese nastavené routováním v souboru **bootstrap.php** v aplikační části projektu frameworku. | ||
+ | | ||
+ | |||
+ | === Eclipse PHP PDT === | ||
+ | |||
+ | PDT - PHP Development Toolkit je rozšíření vývojového prostředí [[http:// | ||
+ | |||
+ | dnf install eclipse-phpeclipse | ||
+ | | ||
+ | :!: Vlastník / | ||
+ | |||
+ | :!: Spouštění prostředí Eclipse jako superuživatel se nedoporučuje | ||
+ | |||
+ | **Adresáře otevřené pro čtení a zápis** | ||
+ | |||
+ | Například adresář pro ukládání dočasných souborů projektu / | ||
+ | |||
+ | md / | ||
+ | chmod 777 / | ||
+ | | ||
+ | Nastavení SELinux provedeme příkazem | ||
+ | |||
+ | chcon -R -t httpd_sys_rw_content_t '/ | ||
+ | | ||
+ | :!: Nevypínejte SELinux, nevystavujte svůj počítač zbytečně bezpečnostnímu riziku | ||
+ | | ||
+ | |||
+ | === NetBeans PHP === | ||
+ | |||
+ | Vzhledem k zastavení vývoje PDT pro Eclipse můžete využít vývojové prostředí NetBeans. Podporuje mnoho známých PHP Frameworků. | ||
+ | |||
+ | dnf -y install netbeans | ||
+ | | ||
+ | Yum nabízí zpravidla starší verzi NetBeans. Aktuální verzi je možné stáhnout ze stránky [[http:// | ||
+ | |||
+ | ---- | ||
+ | |||
+ | |||
+ | [[obsah|Hlavní stránka]] |