Userdir es un modulo de apache que hace posible que todos los usuarios con acceso a un servidor tengan una carpeta llamada public_html en la cual puedan alojar sus páginas y archivos.
La habilitación es super sencilla.
Instalando el Módulo
Asumiendo que tenemos Apache2 instalado ejecutamos:
sudo a2enmod userdir
Si el servidor no reinicia automáticamente lo reiniciamos de manera manual.
sudo /etc/init.d/apache2 restart
Probando la configuración.
Simplemente vamos al HOME de algún usuario y creamos la carpeta public_html y seteamos los permisos.
mkdir public_html
chmod 0755 public_html
Para acceder vamos a la dirección ip del servido ( o el dominio ) y agregamos /~USUARIO. Si tenemos un usuario llamado pepegrillo vamos a la dirección:
Creando la carpeta public_html de manera automática.
Para la creación automática de la carpeta public_html al momento de crear el usuario, simplemente agregamos la nueva carpeta a la dirección /etc/skel. En mi caso además quiero que estás carpetas sean manejadas por el servidor de apache, por lo que le daré la propiedad de la carpeta.
mkdir public_html
chmod 0755 public_html
chown www-data public_html
De esta forma cada vez que se cree un usuario este estará listo para utilizar su carpeta public_html.
OJO, si el servidor Apache2 también utiliza php, y la dirección del usuario no los ejecuta, es debido a que está deshabilitada esta opción en el archivo /etc/apache2/mods-enabled/php5.conf. Esta configuración simplemente se comenta para que funcione.
El archivo quedaría así:
SetHandler application/x-httpd-php
SetHandler application/x-httpd-php-source
# To re-enable php in user directories comment the following lines
# (from to .) Do NOT set it to On as it
# prevents .htaccess files from disabling it.
#
#
# php_admin_value engine Off
#
#
Eso debería ser todo.
Gracias por el post, fue muy útil y lo mejor que sin rodeos.
Gracias por el post, fue muy útil y lo mejor que sin rodeos.
como dejo un usario fuera de apache?
como dejo un usario fuera de apache?
solucionamos el problema comentando el fichero
# php_admin_value engine Off
en la linea gracias.
solucionamos el problema comentando el fichero
# php_admin_value engine Off
en la linea gracias.