Instalace LAMP na Ubuntu

Pavel PHP, Linux

Minule jsme si ukázali, jak na LAMP serveru ukládat emaily. Co když ale server na Linuxu vůbec nemáme? Dnešní krátký průvodce napoví jak nainstalovat, nastavit a zprovoznit LAMP server na Ubuntu/Debian.

Instalace LAMP na Ubuntu

Nebudeme se zdržovat a jdeme na to. K instalaci využijeme příkazy apt-get, které jsou na Ubuntu a Debianu základní příkazy pro instalaci balíčků.

Instalujeme

Začneme instalací Apache2, MySQL a PHP5 a potřebných knihoven pro vzájemnou kompatibilitu. Budete v průběhu instalace dotázání na jméno a heslo do MySQL databáze pro root uživatele.

Dále nastavíme MySQL server instalací základních schémat a volitelně můžeme spustit zabezpečení databáze. Na závěr doinstalujeme balíčky do PHP, zde záleží na vás, které vyberete, mě tyto stačí.

# Stáhneme aktuální seznam balíčků z repozitářů
sudo apt-get update

# Nainstalujeme vše nezbytné
sudo apt-get install apache2 mysql-server php5 libapache2-mod-php5

# Pokud máte MySQL starší jak 5.7.6
sudo mysql_install_db
# Pokud 5.7.6 nebo novější
sudo mysqld --initialize

# Zabezpečení MySQL serveru, na localhostu není nutné
sudo mysql_secure_installation

# Doinstalování PHP knihoven
sudo apt-get install php5-mysql php5-mcrypt php5-curl php5-gd php5-json php5-mysql php5-imagick

Nastavení

Při zadání adresy http://localhost/ uvidíte základní index s umístěním konfiguračních souborů. Hlavní adresář pro weby je /var/www/html. Stále to ale bude chtít nějaké úpravy

Povolení htaccess

Abychom mohli využívat soubor .htaccess, musíme jej povolit v souboru /etc/apache2/apache2.conf. Najdeme tento blok a přepíšeme AllowOverride z none na all

<Directory /var/www/>
    Options Indexes FollowSymLinks
    AllowOverride all
    Require all granted
</Directory>

Instalace mod_rewrite

Asi nejčastější použití souboru .htaccess je právě kvůli možnost podsouvat URL adresy pomocí mod_rewrite. Povolení se provádí pomocí příkazu a2enmod

sudo a2enmod rewrite

Priorita PHP nad HTML

Pokud budete mít ve složce index.html i index.php, větší prioritu bude mít nyní HTML soubor. Toto chování lze změnit v souboru /etc/apache2/mods-enabled/dir.conf. Přesuneme index.php z prostřed druhého řádku na první pozici a uložíme.

<IfModule mod_dir.c>
        DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>

Nastavení PHP

Základní nastavení PHP je někdy ne příliš vyhovující. Následující hodnoty doporučuji změnit, nejčastěji zvýšit. Soubor naleznete na /etc/php5/apache2/php.ini

; V základu Off, pak nebude fungovat <? ... ale jen <?php ...
short_open_tag = On
; Nyní již limit je 128MB, můžete ale zvýšit v případě potřeby
memory_limit = 128M
; Chyby se vůbec nevypisují, což je při vývoji docela otravné
display_errors = On
; Výpis všech chyb kromě DEPRECATED a STRICT
; může se hodit vypisovat všechny
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
; V základu max 2M upload, zvyšte si alespoň na 20M
upload_max_filesize = 20M
; Nastavte si základní časové pásmo
date.timezone = Europe/Prague
; Viz minulý článek
sendmail_path = /usr/sbin/sendmail

Restart Apache

Když jsme provedli všechny změny, je na čase restartovat Apache server pro aplikování změn. Apache2 je nainstalován také jako service, takže restart provedeme jednoduše

sudo service apache2 restart

Závěrem

Nastavení serveru je vhodné pro vývoj, nikoli ostrý provoz. Pokud chcete takto provozovat server veřejně, bylo by potřeba více nastavení a zabezpečení. Snad jsem nezapomněl na žádné doplňky ať už do PHP nebo Apache. Případně napište do komentářů a do článku je doplním

Přidat komentář

Právě odpovídáte na existující komentář. Zrušit

Komentáře

m

25.3.2016 05:44

after of
sudo mysqld --initialize

[ERROR] --initialize specified but the data directory has files in it. Aborting.

Odpovědět

Novinky z blogu

Systém SVG ikon s Gulpem

Alternativou k použití font ikon pro web jsou SVG sprity. Jak ušetřit čas a námahu při jejich tvorbě, si ukážeme v tomto...

Další články