Los directorios de usuario en Apache permiten que cada usuario tenga un directorio en su cuenta donde podrá colocar archivos que podrán ser vistos por un navegador.

Sería algo como:

http://localhost/~usuario

Para especificar el usuario es necesario usar la virgulilla. El símbolo virgulilla sale pulsando simultáneamente ALTgr+4.

Para disponer de esta función debemos activar el modulo de Apache userdir. Creamos el directorio public_html en nuestra cuenta de usuario. En el alojaremos los archivos que se verán a través del navegador. Desde un terminal ejecutamos las siguientes ordenes:

mkdir ~/public_html
sudo a2enmod userdir
sudo /etc/init.d/apache2 restart

Ocurre que los script en php en vez de ejecutarse se descargan. Como no queremos esto, debemos editar un archivo de configuración. Desde el terminal abrimos para editar:

sudo gedit /etc/apache2/mods-enabled/php5.conf

Buscamos en el archivo hasta ver algo así:

# To re-enable php in user directories comment the following lines
# (from <IfModule …> to </IfModule>.) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
<IfModule mod_userdir.c>
<Directory /home/*/public_html>
php_admin_value engine Off
</Directory>
</IfModule>

Como nos dice en las líneas comentadas, las que llevan una almohadilla, debemos comentar desde <IfModule> hasta </IfModule> para que quede así:

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

La almohadilla sale de pulsar ALTgr+3.

Podríamos simplemente cambiar php_admin_value engine Off por php_admin_value engine On pero esto se impondría sobre .htaccess donde a veces podemos desear indicar que no puedan ejecutarse scripts php.

Y reiniciamos el servidor Apache para que los cambios tengan efecto:

sudo /etc/init.d/apache2 restart

Ahora podemos ejecutar nuestros scripts en php en nuestro directorio de usuario de Apache.