Za předpokladu, že jste již apache nainstalovali, proveďte následující:
sudo a2enmod userdir
sudo service apache2 reload
První příkaz aktivuje modus userdir apache, který dělá přesně to, co chcete. Druhý znovu načte konfigurace Apache, aby začal používat novou konfiguraci.
Instalace apache2:
sudo apt-get install apache2
Samozřejmě se také musíte ujistit, že oprávnění ve vaší složce public_html umožňují uživateli www-data vidět soubory v ní – 755 obvykle funguje dobře. Chcete-li to provést:
mkdir ~/public_html
chmod -R 755 ~/public_html
Toto rekurzivně (-R) projde váš public_html a nastaví oprávnění na 755 (vlastník rwx a skupina i ostatní r-x, r-x).
Ostatní odpovědi jsou na správné cestě s mod_userdir
, ale pomocí toho získá váš web základní adresu URL http://www.yourdomain.com/~username/
- například soubor /home/username/public_html/index.html
bude přístupný jako http://www.yourdomain.com/~username/index.html
. Pokud chcete, aby byly vaše soubory přístupné v kořenovém adresáři domény, jako http://www.yourdomain.com/index.html
například pak budete muset vložit direktivu
DocumentRoot /home/username/public_html
v konfiguračním souboru Apache.
Pro Apache musíte použít mod_userdir, jinak musíte nastavit symbolické odkazy z /var/www/
nebo kdekoli.
Váš problém s oprávněními je způsoben tím, že Apache nemá přístup pro čtení k vašim souborům. Musíte povolit přístup pro čtení www-data
(nebo jaký je uživatel; specifické pro distribuci).