¿Alguien sabe cómo cambiar la raíz del documento del servidor Apache? Básicamente quiero localhostvenir del /users/spencer/projectsdirectorio en lugar de /var/www.
Editar
Terminé descubriéndolo. Algunos sugirieron que cambie el httpd.confarchivo, pero terminamos encontrar un archivo en /etc/apache2/sites-available/defaulty cambiaron el directorio raíz de /var/wwwa /home/myusername/projects_foldery que trabajaban.

Respuestas:
Necesita cambiar la
DocumentRootconfiguración en suhttpd.confarchivo. Lo más probable es que esté debajo de algo como/etc/apache2/conf/httpd.confUse su editor favorito (recomiendo Vim ) y busque el
DocumentRooty cámbielo a/users/spencer/projects. También busque un poco más abajo para una configuración que se vea así:También querrá cambiar lo que está entre comillas a su nuevo directorio. Esto le da acceso a Apache para leer desde ese directorio cuando un usuario realiza una solicitud que lo llama.
Ahora reinicie su servicio apache (
httpd -k restart) y debería estar listo.Editar : los archivos de configuración del sitio Apache2 ahora generalmente se guardan en
/etc/apache2/sites-available/(Debian, Ubuntu, etc.).fuente
Tenga en cuenta que esto solo se aplica a Ubuntu 14.04 LTS y versiones más recientes.
En mi Ubuntu 14.04 LTS, la raíz del documento estaba configurada en
/var/www/html. Se configuró en el siguiente archivo:Así que solo haz un
y cambie la siguiente línea a lo que desea:
También hacer un
y encuentra esto
y cambio
/var/www/htmla tu directorio preferidoy guárdalo.
Después de guardar los cambios, simplemente reinicie el servidor web apache2 y habrá terminado :)
Si prefiere un editor de texto gráfico, puede reemplazarlo
sudo nanopor agksu gedit.fuente
var/www/htmlcomo raíz predeterminada. ¿Están realmente tratando de perder el tiempo de las personas? :)You don't have permission to access / on this server.cuando llego a localhost: 80 en mi navegador. ¿Necesito cambiar el puerto?<Directory path_to_directory> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>/etc/apache2/apache2.confTuve que editar
/etc/apache2/sites-available/default. Las líneas son las mismas que menciona RDL.fuente
.confal final, y por defecto tiene un000-prefijo". El resultado es/etc/apache2/sites-available/000-default.conf. No he probado esto, pero puede ayudar a algunas personas.Esto es para Ubunutu 14.04:
En el archivo
/etc/apache2/apache2.confdebe ser como se muestra a continuación sin el nombre del directorio:y en el archivo
/etc/apache2/sites-available/000-default.confdebe incluir el nombre del directorio personalizado, es decir, www:Si no es lo anterior, le dará un error al cargar el servidor:
Forbidden You don't have permission to access / on this serverfuente
La forma correcta de cambiar el directorio o ejecutar desde múltiples directorios bajo un puerto diferente para apache2 es la siguiente:
Para apache2, los archivos de configuración se encuentran debajo
/etc/apache2y no usan un solo archivo de configuración como en versiones anteriores, sino que se dividen en archivos de configuración más pequeños,/etc/apache2/apache2.confsiendo el archivo de configuración principal. Para servir archivos de un directorio diferente, necesitamos un nuevo archivo virtualhost conf. Los archivos conf de virtualhost se encuentran en/etc/apache2/sites-available(no edite archivos dentro de sitios habilitados). El valor por defecto de Apache instalación utiliza el archivo conf host virtual000-default.conf.Comience creando un nuevo archivo virtualhost copiando el archivo virtualhost predeterminado utilizado por la instalación predeterminada de apache (el que se ejecuta en localhost en el puerto 80). Cambie al directorio
/etc/apache2/sites-availabley luego haga una copiasudo cp 000-default.conf example.com.conf, ahora edite el archivo porsudo gedit example.com.conf:He eliminado las líneas no importantes del archivo anterior por brevedad. Aquí
DocumentRootestá la ruta al directorio desde el que se van a servir los archivos del sitio web comoindex.html.Cree el directorio desde el que desea servir los archivos, por ejemplo;
mkdir example.comy cambie el propietario y el grupo predeterminado del directorio, por ejemplo, si su nombre de usuario conectado esubuntucambiar los permisos comosudo chown ubuntu:www-data example.com. Esto otorga acceso completo al usuarioubuntuy permite el acceso de lectura y ejecución al grupowww-data.Ahora edite el archivo apache conf
/etc/apache2/apache2.confemitiendo un comandosudo gedit apache2.confy encuentre la línea<Directory /var/www/>y debajo de la etiqueta de cierre</Directory>, agregue lo siguiente a continuación:Ahora hay dos comandos para habilitar o deshabilitar los archivos de configuración de virtualhost, que son
a2ensiteya2dissiterespectivamente. Ahora, dado que nuestroexample.com.confarchivo usa el mismo puerto (80) utilizado por el archivo de configuración predeterminado (000-default.conf), tenemos que deshabilitar el archivo de configuración predeterminado emitiendo el comandosudo a2dissite 000-default.confy habilitar nuestro archivo de conf virtualhostsudo a2ensite example.com.confAhora reinicie o vuelva a cargar el servidor con el comando
sudo service apache2 restart. Ahora apache sirve archivos del directorioexample.comenlocalhostel puerto predeterminado de80.los
a2ensitecomando básicamente crea un enlace simbólico al archivo conf en el directorio habilitado para el sitioNo edite archivos dentro de un directorio habilitado para sitios (o habilitado para *), como se señala en esta respuesta https://stackoverflow.com/a/41568701/2532763
Para cambiar el puerto y ejecutar desde múltiples directorios en diferentes puertos:
Ahora, si necesita ejecutar el directorio en un puerto diferente, cambie el número de puerto de 80 a 8080 editando el archivo virtualhost como:
y editando
/etc/apache2/ports.confy agregandoListen 8080justo debajo de la líneaListen 80Ahora podemos habilitar el archivo conf virtualhost predeterminado que se ejecuta en el puerto 80 ya que el directorio example.com usa el puerto 8080, como
sudo a2ensite 000-default.confAhora reinicie o vuelva a cargar el servidor con el comando
sudo service apache2 restart. Ahora se puede acceder a ambos directorios desdelocalhostylocalhost:8080fuente
Estaba trabajando con LAMP y para cambiar la carpeta raíz del documento, he editado el archivo predeterminado que está en la carpeta / etc / apache2 / sites-available . Si quieres hacer lo mismo solo edita de la siguiente manera
Después de esto, si escribe localhost en el navegador, cargará el contenido * / home / username / new_root_folder * .
fuente
Si no pudiste encontrar
http.confy seguiste el camino de Nick.Reinicie Apache usando
sudo service apache2 restartfuente
Para apache2 en Linux Mint 17.3 Cinnamon 64-bit, funciona lo siguiente:
En
/etc/apache2/sites-available/abrir el000-default.confarchivo y cambiar la raíz de documentos a la ruta absoluta del directorio.sudo vim /etc/apache2/sites-available/000-default.confEn
/etc/apache2/abiertohttpd.conf, y agregue una<Directory>etiqueta que haga referencia a su directorio y que contenga exactamente la misma configuración que la etiquetavar/www.sudo vim /etc/apache2/apache2.confEn mi máquina se veía así:
Nota: En el primer paso, es probable que desee cambiar la raíz del documento en el
default-ssl.confarchivo también para fines SSL. Pero, por lo que puedo decir, esto no es necesario para ejecutar un entorno de desarrollo general.fuente
En la versión 2.4.18 de apache (Ubuntu).
1. vaya a este archivo /etc/apache2/apache2.conf busque
<Directory /var/www/>y reemplace su directorio ......2. vaya a /etc/apache2/sites-available/000-default.conf busque
DocumentRoot /var/www/htmly reemplace su DocumentRoot ...fuente
En caso de que estés usando Ubuntu 16.04. Actualice 000-default.conf en el directorio / etc / apache2 / sites-available.
aquí -> ServerAdmin webmaster @ localhost DocumentRoot / var / www / html / YourFolder
fuente
Hice
/var/wwwque fuera un enlace suave al directorio requerido (p. Ej./users/username/projects) y las cosas estaban bien después de eso.Sin embargo, naturalmente, el original
/var/wwwdebe eliminarse o cambiarse de nombre.fuente
Si alguien ha instalado
LAMPen la/optcarpeta, entonces el/etc/apache2no es lo que está buscando.Busque el
httpd.confarchivo en/opt/lampp/etc/httpd.conf.Cambie la línea en esta carpeta y guárdela desde la terminal.
fuente
En RedHat 7.0:
/etc/httpd/conf/httpd.conffuente
Si está utilizando Linux Mint (opinión personal, de todas las distribuciones, esta me está haciendo feliz), siga esto:
1- Vaya a / etc / apache2 / sites-available y edite 000-default.conf 2- Busque DocumentRoot, por ejemplo DocumentRoot / var / www / html que cambie a su directorio respectivo; 3- Abra la terminal y escriba: sudo service apache2 restart
EDITADO ----- Me doy cuenta de que en Mint vas a /etc/apache2/apache.conf, reemplazas / var / www en tu ruta respectiva, que reinicias el servidor (paso 3).
Eso es.
fuente
Se aplica a Ubuntu 14.04 y versiones posteriores. Asegúrese de hacer una copia de seguridad de los siguientes archivos antes de realizar cualquier cambio.
1.Abra
/etc/apache2/apache2.confy busque la<Directory /var/www/>directiva y reemplace la ruta con/home/<USERNAME>/public_html. Puedes usar * en lugar de.2.Abra
/etc/apache2/sites-available/000-default.confy reemplace laDocumentRootpropiedad de valor de/var/www/htmla/home/<USERNAME>/public_html. También<Directory /var/www/html>a<Directory /home/<USERNAME>/public_html.3.Abierto
/etc/mods-available/php7.1.conf. Encuentra y comenta el siguiente códigoNo encienda
php_admin_flag engine OFFbandera ya que la razón se menciona en el comentario arriba del código de la Directiva. También la versión php puede ser 5.0, 7.0 o cualquier cosa que haya instalado.Crear
public_htmldirectorio enhome/<USERNAME>.Reinicie el servicio apache ejecutando el comando
sudo service apache2 restart.Pruebe ejecutando un script de muestra en el servidor.
fuente
Si está (como yo) encontrando esta publicación a través de Google:
Lo encontré en /etc/apache2/sites-available/000-default.conf
fuente