servery:apache_s_mysql_a_php

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Následující verze
Předchozí verze
servery:apache_s_mysql_a_php [2012/07/31 19:13] – vytvořeno ubuntuservery:apache_s_mysql_a_php [2019/02/25 18:21] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 1: Řádek 1:
 +====== Apache s MySQL a PHP ======
 +{{.:apache-logo.png}} Pomocí tohoto návodu nainstalujete na svůj počítač **LAMP server** (Linux, Apache, MySQL, PHP).
  
 +
 +====== Instalace ======
 +{{:apt.png}} Všechny potřebné balíky jsou dostupné ve zdrojích. Abyste je nemuseli ručně vybírat, jsou připraveny nástroje k jednoduchému nainstalování.
 +
 +{{:note.png}} Při instalaci budete požádáni o zadání nového hesla uživatele ''root'' pro přístup k databázi.
 +
 +===== Pomocí Synaptic =====
 +{{:synaptic-icon.png}} Nejjednodušším způsobem, jak LAMP server nainstalovat je použít **[[:Synaptic]]**. V něm zvolte **Akce → Vybrat balíky podle účelu** a vyberte **LAMP server**.
 +
 +
 +{{ .:baliky-podle-ucelu.png }}
 +
 +
 +===== Pomocí Tasksel =====
 +{{:terminal.png}} Další možností je použít program **tasksel**. Má tu výhodu, že jej můžete použít i pokud nepoužíváte grafické prostředí.
 +
 +Spusťte [[:terminál]] a [[:jako root]] spusťte příkaz ''tasksel'':
 +<code>
 +sudo tasksel
 +</code>Mezerníkem vyberte **LAMP server** a stisknutím klávesy Enter výběr potvrďte
 +
 +{{ .:tasksel.png }}
 +
 +====== Použití ======
 +{{:server.png}} Servery Apache i MySQL se **spouští automaticky** při startu počítače případně automaticky po jejich instalaci.
 +
 +{{:remote.png}} Ve výchozím nastavení je **obsah serveru umístěn v adresáři** ''/var/www''. Tento adresář můžete změnit v souboru ''/etc/apache2/sites-available/default''.
 +
 +{{:internet.png}} Pokud chcete **obsah serveru zobrazit**, spusťte webový prohlížeč a jako **adresu** zadejte ''http://localhost''. Pokud chcete přistupovat k serveru z jiného počítače, slovo ''localhost'' v adrese nahraďte **IP adresou počítače**, na kterém je server nainstalován.
 +
 +====== Odstranění ======
 +{{:clear.png}} Protože LAMP server není balík, ale úloha, není možné jej jednoduše odstranit. Je třeba **odstranit všechny následující balíky**:
 +
 +<code>
 +apache2 apache2-mpm-prefork apache2-utils apache2.2-common libapache2-mod-php5 libapr1 libaprutil1 libdbd-mysql-perl libdbi-perl libmysqlclient15off libnet-daemon-perl libplrpc-perl libpq5 mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 php5-common php5-mysql
 +</code>
 +====== Instalace doplňků ======
 +{{:plugin.png}} Při instalace LAMP serveru se samozřejmě neinstalují všechny balíky, které můžete potřebovat. Ve zdrojích je různých doplňků jako např. různých modulů pro PHP5 mnoho, stačí tedy doinstalovat, co potřebujete.
 +
 +==== Apache moduly ====
 +{{.:apache-logo.png}} Ve výchozím nastavení se instaluje Apache2, tedy balíky modulů vždy začínají ''libapache2-mod'', např.:
 +
 +  * ''libapache2-mod-mono''
 +  * ''libapache2-mod-perl2''
 +  * ''libapache2-mod-python''
 +
 +{{:settings.png}} Nainstalované moduly se aktivují příkazem ''a2enmod'' spuštěným [[:Root sudo|jako root]] a následným **restartováním Apache**. Pro deaktivaci slouží příkaz ''a2dismod''. Tedy např. takto aktivujete moduly ''userdir'' a ''rewrite'':
 +
 +<code>
 +sudo a2enmod userdir
 +sudo a2enmod rewrite
 +sudo /etc/init.d/apache2 force-reload
 +</code>
 +==== PHP moduly ====
 +{{.:php-logo.png}} Ve výchozím nastavení se instaluje PHP5, tedy balíky modulů vždy začínají ''php5'', např.:
 +
 +  * ''php5-gd'' - grafická GD knihovna
 +  * ''php5-pgsql'' - podpora PortgreSQL
 +  * ''php5-sqlite'' - podpora SQLite
 +  * ''php5-tidy'' - knihovna Tidy
 +
 +====== Administrace MySQL ======
 +{{.:mysql-logo.png}} Protože ovládání MySQL přímo pomocí příkazů není příliš pohodlné, existují nástroje, které tuto práci velmi ulehčují.
 +
 +{{:password.png}} Pro administraci MySQL databáze je třeba se k ní přihlásit. Pokud jste nijak neměnili nastavení uživatelů v MySQL, jediná možnost, jak se přihlásit, je pomocí uživatelského jména ''root'' a hesla, které jste zadali při instalaci MySQL (resp celého LAMP serveru).
 +
 +===== phpMyAdmin =====
 +{{.:phpmyadmin-logo.png}} **phpMyAdmin** je zřejmě nejpoužívanější nástroj pro administraci MySQL databáze na webových serverech. Jedná se o webovou aplikaci, takže je možné se na něj dostat i z jiných počítačů.
 +
 +
 +{{ .:phpmyadmin.png?500 }}
 +
 +
 +==== Instalace ====
 +{{:apt.png}} [[:Nainstalujte]] balík ''phpmyadmin''. Při instalaci budete dotázáni, jaké webové servery se mají s phpMyAdmin nastavit. Vyberte //apache2//.
 +
 +{{ .:phpmyadmin-configure.png?500 }}
 +
 +==== Použití ====
 +{{:navigate.png}} Protože phpMyAdmin je webová aplikace, spusťte webový prohlížeč a jako adresu zadejte ''http://localhost/phpmyadmin''. Pokud chcete přistupovat k phpMyAdmin z jiného počítače, slovo ''localhost'' v adrese nahraďte IP adresou počítače, na kterém je nainstalován.
 +
 +===== Adminer =====
 +**Adminer** (dříve phpMinAdmin) je minimalistický nástroj pro správu MySQL databáze vytvořený v Česku. Stejně jakou u phpMyAdminu se jedná o webovou aplikaci, na rozdíl od něj ale zabírá na disku pouze něco kolem 100 kB (velikost phpMyAdminu je zhruba 11 MB).
 +
 +==== Instalace ====
 +
 +<code>
 +sudo -i
 +mkdir /usr/share/adminer
 +cd /usr/share/adminer
 +wget -O index.php http://www.adminer.org/latest.php
 +sudo ln -s /usr/share/adminer /var/www/adminer
 +</code>
 +
 +Nyní se Adminer pravděpodobně nachází na adrese http://localhost/adminer.
 +
 +==== Instalace vzhledů ====
 +
 +  - Ze stránky http://www.adminer.org/cs/#extras si stáhněte požadovaný vzhled.
 +  - Nastavte mu vhodná práva ''chmod 744 adminer.css''.
 +  - Zkopírujte ho do složky s Adminerem ''cp adminer.css /usr/share/adminer/adminer.css''
 +
 +===== MySQL Administrator =====
 +{{.:mysql-admin-logo.png}} **MySQL Administrator** umožňuje daleko detailnější administraci MySQL databáze. Obsahuje grafické rozhraní, takže potřebuje grafické prostředí a na rozdíl od phpMyAdmin není možné jej spouštět z jiných počítačů.
 +
 +{{ .:mysql-admin.png?500 }}
 +
 +==== Instalace ====
 +{{:apt.png}} [[:Nainstalujte]] balík ''mysql-admin''.
 +
 +==== Použití ====
 +{{:navigate.png}} Program se spouští v menu **Aplikace → Programování → MySQL Administrator**.
 +
 +===== SqliteManager =====
 +Pro administraci databází ''sqlite'' se dá použít SqliteManager.
 +
 +{{:info.png}} Oficiální stránky [[http://www.sqlitemanager.org/|http://www.sqlitemanager.org/]]
 +
 +{{:apt.png}} Na [[http://sourceforge.net/project/showfiles.php?group_id=95526&package_id=101866|stránce]] si vyberte poslední verzi programu a stáhněte si jej v jednom ze zvolených archivů.
 +
 +{{:note.png}} Pokud při některých operacích nebudete mít dostatečné oprávnění, použijte příkaz **sudo**.
 +
 +Instalovat se dá program dvojím způsobem:
 +
 +==== Instalace přímo do složky ====
 +Rozbalte si archiv do složky:
 +<code>
 +/var/www/
 +</code>A pokud možno přejmenujte na **sqliteadmin** příkazem:
 +<code>
 +mv /var/www/SQLiteManager-1.2.0/ /var/www/sqliteadmin/
 +</code>Nyní je vše na svém místě (**program se ještě musí nakonfigurovat**), ale dá se do něj dostat přes webové rozhraní:
 +<code>
 +http://localhost/sqliteadmin
 +</code>
 +==== Instalace do vlastní složky ====
 +Tato metoda je více efektivní, stačí Vám jedna složka kam si budete nahrávat SqliteManager a do složky **/var/www/** se odkážete přes odkaz.
 +
 +Rozbalte si archiv s programem do vlastní složky, třeba do složky **home**:
 +<code>
 +~/SQLiteManager-1.2.0
 +</code>Přejmenujte:
 +<code>
 +mv ~/SQLiteManager-1.2.0/ ~/sqliteadmin/
 +</code>Vytvořte symbolický odkaz na složku:
 +<code>
 +sudo ln -s ~/sqliteadmin/ /var/www/sqliteadmin
 +</code>
 +Nyní je vše na svém místě (**program se ještě musí nakonfigurovat**), ale dá se do něj dostat přes webové rozhraní:
 +<code>
 +http://localhost/sqliteadmin
 +</code>
 +====== Nastavení ======
 +===== Subdomény =====
 +{{:remote.png}} Na serveru Apache je také možné používat subdomény (například //ubuntu.localhost//). Například subdoménu //ubuntu// v adresáři ''/var/www/ubuntu'' vytvoříte takto:
 +
 +
 +[[:Root sudo|Jako root]] **upravte** soubor ''/etc/hosts'' a **přidejte** následující řádek:
 +<code>
 +127.0.0.1 ubuntu.localhost
 +</code>
 +
 +Opět [[:Root sudo|jako root]] **upravte** soubor ''/etc/apache2/sites-available/default'' a na jeho konec **přidejte** toto:
 +<code>
 +<VirtualHost *:80>
 +        DocumentRoot /var/www/ubuntu
 +        ServerName ubuntu.localhost
 +</VirtualHost>
 +</code>
 +Poté **restartujte Apache**:
 +<code>
 +sudo /etc/init.d/apache2 restart
 +</code>
 +
 +====== Problémy ======
 +===== Obnova hesla MySQL =====
 +{{:password.png}} Pokud se vám stane, že jste zapomněli heslo uživatele ''root'', které jste zadali při instalaci serveru, spusťte následující příkaz a zadejte nové heslo:
 +
 +<code>
 +sudo dpkg-reconfigure mysql-server-5.1
 +</code>
 +===== Nefunkční .htaccess =====
 +{{:exec.png}} Ve výchozím nastavení jsou **soubory ''.htaccess'' zakázány**.
 +
 +  - [[:Root sudo|Jako root]] **otevřete** soubor ''/etc/apache2/sites-available/default''
 +  - V tomto souboru najdete následující část:<code>
 +<Directory /var/www>
 +    Options Indexes FollowSymLinks MultiViews
 +    AllowOverride None
 +    Order allow,deny
 +    allow from all
 +</Directory>
 +</code>
 +  - V této části **změňte** ''AllowOverride'' z ''None'' na ''All'', takže bude vypadat takto:<code>
 +<Directory /var/www>
 +    Options Indexes FollowSymLinks MultiViews
 +    AllowOverride All
 +    Order allow,deny
 +    allow from all
 +</Directory>
 +</code>
 +  - Poté **restartujte Apache**:
 +<code>
 +sudo /etc/init.d/apache2 restart
 +</code>
 +
 +===== Nedostatečné oprávnění k souborům =====
 +{{:password.png}} Ve výchozím nastavení **nemá běžný uživatel oprávnění zapisovat** do adresáře ''/var/www'', kde jsou umístěny soubory serveru. Pokud tedy chcete jednoduše měnit soubory na serveru, je třeba **změnit oprávnění** tohoto adresáře. To můžete udělat třeba následujícím příkazem:
 +
 +<code>
 +sudo chmod -R 777 /var/www
 +</code>
 +===== PhpMyAdmin se nezobrazí =====
 +
 +{{:important.png}} Pokud Vám nefunguje v prohlížeči následující adresa a máte naistalován balík
 +''phpmyadmin'':
 +<code>
 +http://localhost/phpmyadmin/
 +</code>Tak to znamená že máte nainstalován phpMyAdmin, ale není k němu vytvořen link v **/var/www**.\ 
 +Následujícím příkazem si přidáte link na phpMyAdmin a poté by to již mělo fungovat správně.
 +<code>
 +sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin
 +</code>
 +
 +====== Odkazy ======
 +  * [[http://www.apache.org| Domovská stránka Apache]]
 +  * [[http://www.mysql.com| Domovská stránka MySQL]]
 +  * [[http://www.php.net|Domovská stránka PHP]]
 +
 +----
 +  * [[http://www.phpmyadmin.net|Domovská stránka phpMyAdmin]]
 +  * [[http://www.mysql.com/products/tools/administrator|Domovská stránka MySQL Administrator]]
 +
 +----
 +  * [[https://help.ubuntu.com/community/ApacheMySQLPHP|ApacheMySQLPHP]] {{:en.png}}