Administrace apache2 a modulu

Apache2 a moduly

 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

 Nainstalované moduly se aktivují příkazem a2enmod spuštěným jako root a následným restartováním Apache. Pro deaktivaci slouží příkaz a2dismod. Tedy např. takto aktivujete moduly userdir a rewrite:

sudo a2enmod userdir
sudo a2enmod rewrite
sudo /etc/init.d/apache2 force-reloadu

Userdir

tento modul umožňuje nastavit adresář v home adresáři uživatele jako použitelná pro web server to znamená, že uživatel si soubory uloží do svého adresáře a tam je spravuje a podstrkuje pro web prezentaci. Ve web browseru je možno následně přistupovat k tomuto adresáři takto http://[nazev nebo ipadresa web stroje]:/~[uzivatel] např. http://www.sspu-opava.cz/~petrg

Postup:

sudo a2enmod userdir
sudo service apache2 restart
mkdir ~/public_html
chmod 755 ~/public_html
echo "<? phpinfo() ?>" > ~/public_html/index.php

pokud Vám  nepojedou php skripty je nutno upravit soubor /etc/apache2/mods-available/php5.conf

v oblasti

    <IfModule mod_userdir.c>
        <Directory /home/*/public_html>
            php_admin_value engine Off
        </Directory>
    </IfModule>

nutno zakomentovat

#    <IfModule mod_userdir.c>
#        <Directory /home/*/public_html>
#            php_admin_value engine Off
#        </Directory>
#    </IfModule>

a restartovat apache

Subdomény

manual podrobny zde

https://www.digitalocean.com/community/tutorials/how-to-set-up-apache-virtual-hosts-on-ubuntu-14-04-lts

 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/ubuntuvytvoříte takto:

Jako root upravte soubor /etc/hosts a přidejte následující řádek:

127.0.0.1	ubuntu.localhost

Opět jako root upravte soubor /etc/apache2/sites-available/default a na jeho konec přidejte toto:

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

Poté restartujte Apache:

sudo /etc/init.d/apache2 restart

 

Nefunkční .htaccess

 Ve výchozím nastavení jsou soubory .htaccess zakázány.

  1. Jako root otevřete soubor /etc/apache2/sites-available/default
  2. V tomto souboru najdete následující část:

    <Directory /var/www>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
  3. V této části změňte AllowOverride z None na All, takže bude vypadat takto:

    <Directory /var/www>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
    </Directory>
  4. Poté restartujte Apache:
sudo /etc/init.d/apache2 restart

Nedostatečné oprávnění k souborům

 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:

sudo chmod -R 777 /var/www

 

PhpMyAdmin se nezobrazí

 Pokud Vám nefunguje v prohlížeči následující adresa a máte naistalován balík phpmyadmin:

http://localhost/phpmyadmin/

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ě.

sudo ln -s /usr/share/phpmyadmin /var/www/phpmyadmin