publico por para httpd directorio defecto configurar conf cambiar acceso linux apache lamp

por - directorio apache linux



¿Cómo cambio el directorio raíz de un servidor apache? (17)

¿Alguien sabe cómo cambiar la raíz del documento del servidor Apache? Básicamente quiero que localhost provenga del directorio /users/spencer/projects lugar de /var/www .

Editar

Terminé descubriéndolo. Algunos sugirieron que cambiara el archivo httpd.conf , pero terminé encontrando un archivo en /etc/apache2/sites-available/default y cambié el directorio raíz de /var/www a /home/myusername/projects_folder y eso funcionó.


Debe cambiar la configuración de DocumentRoot en su archivo httpd.conf . Lo más probable es que esté bajo algo como /etc/apache2/conf/httpd.conf

Use su editor favorito (recomiendo Vim ) y busque DocumentRoot y cámbielo a /users/spencer/projects . También busque un poco más abajo para una configuración que se parece a esto:

<Directory "/var/www">

También querrá cambiar lo que está en las citas a su nuevo directorio. Esto le da a Apache acceso para leer desde ese directorio cuando un usuario realiza una solicitud para llamarle.

Ahora reinicia tu servicio de apache ( httpd -k restart ) y deberías estar listo.

Edición : los archivos de configuración del sitio de Apache2 normalmente se guardan en /etc/apache2/sites-available/ (Debian, Ubuntu, etc.).


En RedHat 7.0: /etc/httpd/conf/httpd.conf


En caso de que esté utilizando Ubuntu 16.04. Actualice el archivo 000-default.conf en el directorio / etc / apache2 / sites-available.

aquí -> ServerAdmin webmaster @ localhost DocumentRoot / var / www / html / YourFolder


En la versión apache 2.4.18 (Ubuntu).

1. Vaya a este archivo /etc/apache2/apache2.conf busque <Directory /var/www/> y sustitúyalo por su directorio ......

2. Vaya a /etc/apache2/sites-available/000-default.conf busque DocumentRoot /var/www/html y sustitúyalo por su DocumentRoot ...


En lugar de cambiar el directorio predeterminado de su servidor web, puede crear un Alias .

Por lo tanto tienes que crear dos archivos:

  • uno en /etc/apache2/sites-available/ y
  • uno en /etc/apache2/sites-enabled/

Llámelos a ambos como example.conf e inserte en ambos archivos Alias <where you want to access (eg. /example)> "<your files directory (eg. /home/user/host/example)>"

Entonces deberías poder acceder a él con //localhost/example .

EDITAR:

Tal vez olvidé mencionar algunas órdenes porque las olvido: P
o debe editar las autorizaciones de la carpeta / archivo al que intenta acceder.


Estaba trabajando con LAMP y para cambiar la carpeta de raíz de documentos, 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

DocumentRoot /home/username/new_root_folder <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /home/username/new_root_folder> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory>

Después de esto, si escribe localhost en el navegador, se cargará el contenido * / home / username / new_root_folder * .


Esto es para Ubunutu 14.04:

En el archivo /etc/apache2/apache2.conf debería ser como se muestra a continuación sin el nombre del directorio:

<Directory /home/username> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>

y en el archivo /etc/apache2/sites-available/000-default.conf debe incluir el nombre del directorio personalizado, es decir, www:

DocumentRoot /home/username/www

Si no es como el anterior, le dará un error al cargar el servidor: Forbidden You don''t have permission to access / on this server


Hice que /var/www fuera un enlace flexible al directorio requerido (por ejemplo, /users/username/projects ) y las cosas estaban bien después de eso.

Sin embargo, naturalmente, el original /var/www necesita ser borrado, o renombrado.


La forma correcta de cambiar el directorio o ejecutar desde varios directorios bajo un puerto diferente para apache2 es la siguiente:

Para apache2, los archivos de configuración se encuentran en /etc/apache2 y no usan un solo archivo de configuración como en versiones anteriores, pero se dividen en archivos de configuración más pequeños, con /etc/apache2/apache2.conf como el archivo de configuración principal. Para servir archivos desde un directorio diferente, necesitamos un nuevo archivo de configuración de host virtual. Los archivos de configuración de host virtual se encuentran en /etc/apache2/sites-available (no edite archivos dentro de sites habilitados). La instalación predeterminada de apache usa el archivo conf de virtualhost 000-default.conf .

Comience por crear un nuevo archivo de host virtual copiando el archivo de host virtual 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-available y luego haga una copia con sudo cp 000-default.conf example.com.conf , ahora edite el archivo con sudo gedit example.com.conf para:

<VirtualHost *:80> ServerAdmin example@localhost DocumentRoot /home/ubuntu/example.com </VirtualHost>

He eliminado las líneas no importantes del archivo de arriba por brevedad. Aquí DocumentRoot es la ruta al directorio desde el cual se servirán los archivos del sitio web, como index.html .

Cree el directorio desde el que desea servir los archivos, por ejemplo; mkdir example.com y cambio de propietario y grupo predeterminado del directorio, por ejemplo, si su nombre de usuario registrado es ubuntu cambie los permisos como sudo chown ubuntu:www-data example.com . Esto otorga acceso completo al usuario ubuntu y permite el acceso de lectura y ejecución al grupo www-data .

Ahora edite el archivo de /etc/apache2/apache2.conf apache /etc/apache2/apache2.conf emitiendo el comando sudo gedit apache2.conf y busque la línea <Directory /var/www/> y debajo de la etiqueta de cierre </Directory> , agregue lo siguiente a continuación:

<Directory /home/ubuntu/example.com> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Require all granted </Directory>

Ahora hay dos comandos para habilitar o deshabilitar los archivos de configuración de host virtual, que son a2ensite y a2dissite respectivamente. Ahora, ya que nuestro archivo example.com.conf usa el mismo puerto ( 80 ) que el archivo de configuración predeterminado ( 000-default.conf ), tenemos que deshabilitar el archivo de configuración predeterminado emitiendo el comando sudo a2dissite 000-default.conf y habilite nuestro archivo de sudo a2ensite example.com.conf mediante sudo a2ensite example.com.conf

Ahora reinicie o vuelva a cargar el servidor con el comando sudo service apache2 restart . Ahora apache sirve los archivos del directorio example.com en localhost en el puerto predeterminado de 80 .

El comando a2ensite básicamente crea un enlace simbólico al archivo conf bajo el directorio habilitado para el sitio

No edite archivos dentro de directoy habilitado para sitios (o habilitado con *), como se indica en esta respuesta https://.com/a/41568701/2532763

Para cambiar el puerto y ejecutar desde varios 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 de host virtual como:

<VirtualHost *:8080> ServerAdmin user@localhost DocumentRoot /home/ubuntu/work </VirtualHost>

y editando /etc/apache2/ports.conf y agregando Listen 8080 justo debajo de la línea Listen 80

Ahora podemos habilitar el archivo de configuración de host virtual predeterminado que se ejecuta en el puerto 80 ya que el directorio example.com usa el puerto 8080, como sudo a2ensite 000-default.conf

Ahora reinicie o vuelva a cargar el servidor con el comando sudo service apache2 restart . Ahora se puede acceder a ambos directorios desde localhost y localhost:8080


Para apache2 en Linux Mint 17.3 Cinnamon 64-bit los siguientes trabajos:

  1. En /etc/apache2/sites-available/ abra el archivo 000-default.conf , y cambie la raíz de documentos a la ruta absoluta de su directorio.

    sudo vim /etc/apache2/sites-available/000-default.conf

  2. En /etc/apache2/ abra httpd.conf , y agregue una etiqueta <Directory> haga referencia a su directorio y que contenga exactamente la misma configuración que la etiqueta para var/www .

    sudo vim /etc/apache2/apache2.conf

    En mi máquina se veía así:

<Directory /home/my_user_name/php/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory>

Nota: en el primer paso, es probable que desee cambiar la raíz de documentos en el archivo default-ssl.conf también para fines de SSL. Pero por lo que puedo decir, esto no es necesario para que se ejecute un entorno de desarrollo general.


Se aplica a Ubuntu 14.04 y versiones posteriores. Asegúrese de realizar una copia de seguridad de los siguientes archivos antes de realizar cambios.

1. /etc/apache2/apache2.conf y busque la <Directory /var/www/> y reemplace la ruta con /home/<USERNAME>/public_html . Puedes usar * en lugar de.

2. Abra /etc/apache2/sites-available/000-default.conf y reemplace DocumentRoot propiedad de valor DocumentRoot de /var/www/html a /home/<USERNAME>/public_html . También <Directory /var/www/html> a <Directory /home/<USERNAME>/public_html .

3.Abra /etc/mods-available/php7.1.conf . Encuentra y comenta el siguiente código

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

No encienda el indicador de php_admin_flag engine OFF ya que la razón se menciona en el comentario anterior Código de directiva. También la versión php puede ser 5.0, 7.0 o cualquier cosa que haya instalado.

Cree el directorio public_html en la página de home/<USERNAME> .

Reinicie el servicio de apache ejecutando el comando sudo service apache2 restart .

Prueba ejecutando script de ejemplo en el servidor.


Si alguien ha instalado LAMP en la carpeta /opt entonces /etc/apache2 no es lo que está buscando.

Busque el archivo httpd.conf en /opt/lampp/etc/httpd.conf .

Cambie la línea en esta carpeta y guárdela desde el terminal.


Si estás (como yo) encontrando esta publicación a través de Google:

Lo encontré en /etc/apache2/sites-available/000-default.conf


Si estás usando Linux Mint (opinión personal, de todas las distribuciones, esta me está haciendo feliz), sigue esto:

1- Vaya a / etc / apache2 / sites-available y edite 000-default.conf 2- Busque DocumentRoot, ejemplo DocumentRoot / var / www / html que cambia a su directorio respectivo; 3- Abre el terminal y escribe: sudo service apache2 restart

EDITADO ----- Me doy cuenta de que en Mint, vaya a /etc/apache2/apache.conf, reemplace / var / www a su ruta respectiva, luego reinicie el servidor (paso 3).

Eso es.


Si no podías encontrar http.conf y http.conf el camino de Nick.

Reinicie Apache usando sudo service apache2 restart


Tuve que editar /etc/apache2/sites-available/default . Las líneas son las mismas que las mencionadas por RDL.


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 se estableció en /var/www/html . Se configuró en el siguiente archivo:

/etc/apache2/sites-available/000-default.conf

Así que solo haz un

sudo nano /etc/apache2/sites-available/000-default.conf

y cambia la siguiente línea a lo que quieras:

DocumentRoot /var/www/html

Tambien hacer un

sudo nano /etc/apache2/apache2.conf

y encontrar esto

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

y cambie /var/www/html a su directorio preferido

y guárdalo.

Después de guardar los cambios, simplemente reinicie el servidor web apache2 y habrá terminado :)

sudo service apache2 restart Si prefiere un editor de texto gráfico, simplemente puede reemplazar el sudo nano por un gksu gedit .