Apache no sigue enlaces simbólicos | 403 permiso denegado

Apache no sigue enlaces simbólicos | 403 permiso denegado

Estoy usando Ubuntu 14.04 y tengo un problema con la configuración de Apache:

Creé un enlace simbólico en /var/www/html(apache DocRoot desde Ubuntu 14.04) hacia/home/me/myWebDirectory

  • cd /var/www/html
  • ln -s /home/me/myWebDirectory myWebDirectory

pero localhost/myWebDirectoryrepresenta un

403-permiso denegado

y de hecho, sudo -u www-data ls /home/me/myWebDirectorytambién devuelve un permiso denegado.

apache2.conf tenía la siguiente directiva:

    <Directory /var/www>
           Options Indexes FollowSymLinks
           AllowOverride None
           Require all granted
 </Directory>

lo cambié por<Directory /var/www/html>

pero sin resultado.

Intenté agregar el meusuario www-data groupcon el siguiente comando pero tampoco ayudó: sudo usermod -a -G www-data me

que es lo que extraño??

EDITAR: Cambié el grupo de /home/me/myWebDirectorya www-data con derechos rx, pero tampoco tuve éxito...

Nota 1:Sé que hay otra forma de hacerlo, mientras se activa Apache mod_userdir y eso es probablemente lo que haré a continuación. Pero primero me gustaría entender cómo hacer que esta solución "simple" funcione...

Nota 2:También sé que podría crear un VirtualHost y demás, pero nuevamente, primero me gustaría entender por qué esta solución simple (primera y temporal) no funciona...

Respuesta1

Cuando se trata de permisos, creo que lo entendiste al revés. Agregar un usuario meno www-dataayuda, debe agregar el usuario de Apache al megrupo de usuarios.

Además, si cambió solo los derechos de grupo de /home/me/myWebDirectory, eso no es suficiente si /home/mees inaccesible por www-datagrupo. Asegúrese de que los usuarios del www-datagrupo puedan ingresar /home/meal directorio.

Para un enfoque más granular, eche un vistazo aACL POSIX.

Respuesta2

Apache2 necesita poder leer desde el principio de la ruta del directorio.

sudo chgrp www-data /home/username

agregar grupo www-data al nombre de usuario

sudo useradd -g www-data username

y cerrar sesión y iniciar sesión... trabajó conmigo

si todavía no funciona usa

sudo chgrp www-data /home/username

Intente cerrar sesión y volver a iniciarla... debería funcionar.

información relacionada