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
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.
-
Jako root otevřete soubor
/etc/apache2/sites-available/default -
V tomto souboru najdete následující část:
<Directory /var/www> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> -
V této části změňte
AllowOverridezNonenaAll, takže bude vypadat takto:<Directory /var/www> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> -
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