en Apache en Ubuntu he configurado un vhost, pero en el navegador sigo recibiendo un error "403 Acceso prohibido"; el registro dice " Cliente denegado por la configuración del servidor: / home / remix / ".
Buscando la solución en línea, encontré muchas publicaciones sobre el acceso al directorio (Permitir desde todas, etc.), pero que yo sepa, ya lo hice. En httpd-vhosts.conf hay el siguiente código:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot "/opt/lampp/htdocs/"
ServerName localhost
ServerAlias localhost
ErrorLog "logs/dummy-host.example.com-error_log"
CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "/home/remix/"
ServerName testproject
ServerAlias testproject
<Directory "/home/remix/">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
También he añadido
127.0.0.1 testproject
al archivo / etc / hosts.
Además, la carpeta / home / remix / contiene un archivo index.html y los vhosts están habilitados en httpd.conf.
¿Hay algo que no esté viendo?
Editar: Esta es la entrada Apache error_log:
[Sat Aug 18 09:15:32.666938 2012] [authz_core:error] [pid 6587]
[client 127.0.0.1:38873] AH01630: client denied by server configuration: /home/remix/
linux
apache-2.2
ubuntu
virtualhost
RemiX
fuente
fuente

Respuestas:
Cambie su configuración de autorización:
... a la versión Apache 2.4 de la misma.
Revise el documento de descripción general de la actualización para obtener información sobre otros cambios que necesite realizar, y tenga en cuenta que la mayoría de los ejemplos de configuración y asistencia que encuentra en Google (así como en este sitio) se refieren a 2.2.
fuente
Verifique los permisos en el directorio. Apuesto a que está configurado para denegar el acceso a cualquier persona que no sea usted, por ejemplo:
Si ve
drwx------exactamente, entonces este es el caso. Solucionarlo ejecutando:fuente
Asegúrese de que el usuario que ejecuta el
httpdservicio tenga acceso a estos directorios.fuente
Userparámetro."cliente denegado por la configuración del servidor" significa que el servidor Linux mismo prohíbe el acceso al archivo, no a Apache.
Si proporcionar acceso mediante el cambio de permisos / propiedad / pertenencia al grupo no resuelve el problema, la causa de la ruta puede ser SELinux que prohíbe el acceso a cualquier carpeta que no tenga el contexto SE Linux apropiado como se explica en 'Reubicación de una raíz de documento de Apache en Selinux' .
setenforce 0que el archivo sea accesiblesetenforce 0hace que el archivo no sea accesibleEntonces, con seguridad, SELinux prohíbe el acceso, independientemente de los permisos del archivo.
fuente
Otro problema simple (pero complicado) que puede causar este problema a las personas es cuando los directorios de usuarios no están en / home / *, sino en otro lugar, por ejemplo, / nethome / *
El userdir.conf suministrado contiene algo como esto: (pero con Userdir: deshabilitado)
La especificación del directorio asume ~ user == / home / user. Simplemente cambie o agregue la especificación de Directorio para saber dónde están realmente los directorios de inicio del usuario.
¡Bastante obvio, pero me tomó un tiempo descubrirlo! :-P DUH!
por ejemplo, ~ usuario == / nethome / usuario
Vea también más autorización abierta en ese Directorio en general.
fuente