Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Konfigurace LAMPP serveru na Linuxu Ubuntu

Linux a UNIX Konfigurace LAMPP serveru na Linuxu Ubuntu

ONEbit hosting Unicorn College Tento obsah je dostupný zdarma v rámci projektu IT lidem. Vydávání, hosting a aktualizace umožňují jeho sponzoři.

Vítejte v průvodci instalace a nastavení apache, mysql a php na Ubuntu (14.04). Návod nebude jen o několika stisknutí next v grafickém instalátoru. Lehce zabrouzdáme i do serverových konfiguračních nastavení, získáme tak naprostou kontrolu nad svým serverem, což je nezbytné se naučit pokud to s PHP myslíte vážně. Ovšem pokud jste nikdy (X/L)AMPP neinstalovali jinak než přes automatický instalátor, tak se ničeho nebojte, náš podrobnější postup není o nic složitější.

Instalace balíků

Připravíme si terminál (ctrl + alt +t) a začneme instalovat potřebný software (do terminálu lze vložit text klávesovou zkratkou ctrl + shift + v a zkopírovat ho pak logicky ctrl + shift + c). Celý postup je jen nainstalování čtyř balíků a upravení dvou slov ve dvou souborech.

Apache

Začneme Apachem.

sudo apt-get install apache2
Instalace Apache na Linux

Budete vyzvání pro zadání rootovského hesla. Pravděpodobně bude stejné jako uživatelské heslo vašeho účtu. Instalace bude trvat pár desítek vteřin a stejně tak následující balíky, po dokončení stejným způsoben nainstalujeme zbylé balíky.

PHP

Nyní nainstalujeme PHP.

sudo apt-get install php5

MySQL

A MySQL databázi.

sudo apt-get install mysql-server

NEBO (já používám mariadb, pokud neznáte, tak si za domácí úkol dohledejte informace)

sudo apt-get install mariadb-server

I v případě mariadb zadáme

sudo apt-get install php5-mysql

V průběhu instalace mysql nebo mariadb budete vyzvání k zadání hesla (automatická instalace vám heslo nenastaví) k tlačítku OK se dostanete skrze tabulátor.

Instalace MySQL databáze na Linux

V tuto chvíli máme všechen potřebný software a můžeme se podívat na localhost, zda-li nás přivítá Apache.

Apache v Linuxu

Xampp jste asi zvyklí zapínat přes jeho prostředí. Náš „čistý“ server běží hned po startu systému. Nicméně pro konfiguraci, která bude teď následovat, budeme potřebovat nějaké ovládání. To se skládá ze tří příkazů:

Zastavení

sudo service apache2 stop

Vyzkoušejte, úspěšnost nebo neúspěšnost by jste měli vyčíst už z terminálu, ale stejně se můžeme podívat na localhost.

Apache v Linuxu

Start

sudo service apache2 start

Restart

sudo service apache2 restart

Nyní sice fungujeme, ale chybí nám dvě zásadní věci. Hlášení chyb a povolení .htaccess. Také potřebujeme vědět kde má localhost svůj adresář. Defaultně je v /var/www/html. Otevřeme nautilus nebo jiný správce souborů, klikneme na „Počítač“ dále /var, /www a /html. Hned zjistíme, že zde sem nemůžeme vytvářet ani vkládat soubory. Ve Windows takové omezení není, pokud neřekneme jinak, tak může kdokoliv (my nebo naše aplikace) na našem localhostu číst, vytvářet a mazat. Na Linuxu má tyto plná práva ve výchozím stavu jen root, ostatní pouze vidí soubory. Proto jménem roota nastavíme přístup pro sebe a ostatní.

sudo chmod -R 777 /var/www

Nyní, pokud máme vypnutý Apache, tak ho jako první zapneme, vytvoříme nějaký php script a odzkoušíme. Pokud v něm uděláte syntaktickou chybu, tak vám ji nikdo nenahlásí a dokonce se vůbec nic nezobrazí. Plus pokud vyzkoušíte nějakou aplikaci s .htaccessem, tak zjistíte, že ani ten nefunguje, jak jsem říkal.

Zobrazení chyb

sudo gedit /etc/php5/apache2/php.ini

V editoru gedit se nám s rootovskými právy otevře php.ini soubor. Přes ctrl + f najdeme „display_errors = Off“, přepíšeme Off na On a restartujeme apache.

Zobrazení chyb v Apache

Mod_rewrite (.htaccess)

Doplňky apachi povolujeme překopírováním odkazu na mód z adresáře /etc/apache2/mods-available do /etc/apache2/mods-enabled. Naštěstí to lze vyřešit i automaticky zadáním příkazu:

sudo a2enmod rewrite

Dále musíme v konfiguračním souboru povolit AllowOverride

sudo gedit /etc/apache2/apache2.conf

Otevřeme konfigurační soubor s rootovskými právy a přepíšeme v bloku /var/www „AllowOverride None“ None na All.

Restartujeme apache

Apache server v Linuxu

Abych to mohl 100% otestovat, tak jsem rychle nainstaloval Wordpress. Vidíme, že vše běží. Rychlejší možnost ověření lze provést mrknutím se do informacích o apachi (phpinfo();) a v tabulce "Loaded Modules" byste měli vidět, mimo jiné, mod_rewrite pokud vše proběhlo v pořádku.

Phpmyadmin

Poslední fáze instalace je program pro správu databází. Možností tu máme několik, většina lidí asi využije phpMyAdmina, pro jehož instalaci tu máme nádherně snadný a pohodlný způsob (netestováno).

sudo apt-get install phpmyadmin

já ale používám adminera, kterého jsem si jen dal do /var/www. Další možností je desktopová aplikace např. MySQL Administrator (najdete v Centru software).

Upravení výchozího adresáře

Pravděpodobně budete jen chtít upravit html složku.

sudo gedit /etc/apache2/sites-available/000-default.conf

To nastavíme v tomto souboru na řádku DocumentRoot /var/www/html

Instalace doplňků

V základní instalaci nejsou obsaženy všechny doplňky, které lze získat. Doplňky jsou rozděleny pro apache a pro php, např:

  • libapache2-mod-python
  • php5-gd

Nainstalované doplňky se zapínají pomocí a2enmod, jak už jsme si zkusili.

sudo a2enmod userdir

Subdomény

Různé projekty budeme možná chtít rozdělit lépe než localhost/adresar, nehledě na využití subdomén v ostrém provozu. Do souboru /ect/hosts přidáme

127.0.0.1       subdomena.localhost
sudo gedit /etc/hosts

Dále otevřeme

sudo gedit /etc/apache2/sites-available/000-default.conf

a na konec přidáme

<VirtualHost *:80>
        DocumentRoot /var/www/subdomena
        ServerName subdomena.localhost
</VirtualHost>

Restartujeme apache a hurá. Při zkoušení raději zadejte celou cestu http://subdomena.localhost, jelikož inteligentní prohlížeč by vás mohl přesměrovat na Google nebo váš vyhledávač.

Odinstalace

Odstranění dosud nainstalovaných součástí provedeme sérií příkazů:

sudo apt-get purge apache*
sudo apt-get purge php*
sudo apt-get purge mariadb*
sudo apt-get autoremove

Tímto způsobem bychom se měli zbavit všech instalovaných balíků, popř. se přes synaptic můžete podívat, zda-li nebyl někdo přehlédnut.

To je vše k ruční konfiguraci LAMPPU. Nyní jste připraveni koupit si vlastní server a nemusíte se bát žádného nastavování.

Ještě jednou důležité informace: Vše startuje automaticky po naběhnutí systému, pro dodatečné ovládání slouží tři jednoduché příkazy vypsané výše.

Výchozí adresář se soubory je /var/www/html

K obsahu serveru se dostaneme na http://localhost, pokud máte veřejnou IP adresu, můžete localhost nahradit svou IP a zpřístupnit tak weby veřejnosti.


 

 

Článek pro vás napsal kxmx
Avatar
Jak se ti líbí článek?
14 hlasů
Miniatura
Předchozí článek
Nasazení Let's Encrypt na Apache
Miniatura
Všechny články v sekci
Linux a UNIX
Aktivity (1)

 

 

Komentáře
Zobrazit starší komentáře (25)

Avatar
apotekil
Člen
Avatar
apotekil:19.11.2015 12:51

Aha no už som nato prišiel :
Do súboru "/etc/apache2/a­pache2.conf"
Treba dopísať "Include /etc/phpmyadmin/a­pache.conf"
A následne "sudo service apache2 restart"

Odpovědět  +1 19.11.2015 12:51
Nerozmýšľaj ako sa to nedá, proste tvor. A čo tvoriť ? To je úplne jedno, nápady prídu postupne.
Avatar
Jaro
Člen
Avatar
Odpovídá na apotekil
Jaro:19.11.2015 12:52

hej tak to má byť, proste tam treba naincludovať ten config pre phpmyadmin

Odpovědět  +1 19.11.2015 12:52
A ship is safe in harbor. But then again, that´s not what ships are for.
Avatar
fiftypi
Člen
Avatar
fiftypi:5.10.2016 19:16

Ahoj, jak si mohu nastavit doménové jméno? Je potřeba za to platit, když to chci mít v rámci lokální sítě?

 
Odpovědět 5.10.2016 19:16
Avatar
00
Člen
Avatar
Odpovídá na fiftypi
00:5.10.2016 19:31

Na lokální síť stačí DNS server

 
Odpovědět 5.10.2016 19:31
Avatar
Odpovídá na fiftypi
Michal Žůrek (misaz):5.10.2016 19:38

V lokální síti si to můžeš klidně zpustit na google.com a to zadarmo.

Odpovědět 5.10.2016 19:38
Nesnáším {}, proto se jim vyhýbám.
Avatar
fiftypi
Člen
Avatar
Odpovídá na 00
fiftypi:5.10.2016 19:40

A ten DNS server si nakonfiguruju jak? na Linuxu?

 
Odpovědět 5.10.2016 19:40
Avatar
mkub
Redaktor
Avatar
Odpovídá na fiftypi
mkub:9.10.2016 12:21

ked mas Linux, tak si nainstaluj DNS server, napriklad BIND, na youtube najdes videotutorialy, ako na to

 
Odpovědět 9.10.2016 12:21
Avatar
Marek Šafránek:23.10.2016 20:53

Dostal jsem se do Zobrazení chyb a zdá se že žádnou takovou složku a soubar tam nemám v etc jen php /etc/php5/apache2/php­.ini

Odpovědět 23.10.2016 20:53
Stojí-li něco za námahu, je třeba to udělat pořádně...
Avatar
kxmx
Redaktor
Avatar
Odpovídá na Marek Šafránek
kxmx:24.10.2016 13:32

vždyť to je přesně ten soubor, v případě posledního ubuntu /etc/php/7.0/a­pache2/php.ini

 
Odpovědět 24.10.2016 13:32
Avatar
fiftypi
Člen
Avatar
fiftypi:29. června 19:57

Zdravím,
pokud chci nastavit subdoménu, jak to mám udělat, když i server běží na Virtuálním PC?
Mám do /etc/hosts přidávat stejný řádek a jen přidat subdoménu?
např:.

127.0.0.1               localhost
127.0.0.1               50p.localhost

a potom v /etc/apache2/sites-available/000de­fault.conf na konec řádku přidat

<VirtualHost *:80>
        RootDirectory /var/www/50P
        ServeName 50p.localhost
</VirtualHost>
 
Odpovědět 29. června 19:57
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 35. Zobrazit vše