Configurar Apache
Configurar Apache
Hasta ahora solo sé configurar el servidor Apache a partir de cambiar el archivo httpd.conf, pero creo que existe un modo de hacerlo mediante la creación de archivos en las carpetas sites-enable y sites-aviable. Si alguien conoce el modo por favor respóndame. Estoy cansado de cambiar el fichero y todo eso por falta de conocimiento.
Solo que, falto de almas en quienes verter la suya desbordante, muere ahogado el poeta.
José Martí
José Martí
Re: Configurar Apache
Basicamente en sites-available creas otros archivos de configuración, uno para cada sitio que desees gestionar. Dentro de los archivos de configuración (aparte de las opciones) debes tener algo más o menos así:
Luego lo único que tienes que hacer es crear un enlace simbólico en el directorio sites-enabled o ejecutar el comando a2ensite sitio1. Para desactivar el sitio, eliminas el enlace simbólico o ejecutas a2dissite sitio1.
Obviamente que para que los sitios sean accesibles tabién tienes que crear entradas DNS para que cada subdominio resuelva a la misma ip del servidor.
Código: Seleccionar todo
<VirtualHost *:80>
ServerName sitio1.midominio.cu
DocumentRoot /var/www/sitio1
...
</VirtualHost>
Obviamente que para que los sitios sean accesibles tabién tienes que crear entradas DNS para que cada subdominio resuelva a la misma ip del servidor.
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke
- Edmund Burke
Re: Configurar Apache
Gracias hugo, si puedes ayúdame más
Donde trabajo yo no soy el administrador, no puedo configurar el DNS global. Solo soy un desarrollador y a lo mejor lo que pregunté antes puede que tenga o no sentido.
Yo estoy haciendo un proyecto que necesita correr con apache, y siempre corre con la dirección http://localhost, sitio que se consulta sin proxy por la restricción que pongo en el navegador. El proyecto corre en MonoServer, mas yo también instalé phpmyadmin para trabajar más cómodo con mysql, y eso trabaja con el intérprete de php y no con mono.
El problema surge porque los dos corren en http://localhost, uno con la configuración para usar el MonoServer y otro con la configuración por default. Para cambiar de configuración lo que hago es como dije antes, configuro el httpd.conf, quito o pongo comentario según vaya a utilizar MonoServer o no. Si no lo voy a utilizar entonces pongo comentario en todo el archivo y me sale la configuración por defecto, si lo voy a utilizar entonces quito los comentarios que tienen que ver con el VirtualHost para MonoServer.
Pero yo deseo algo así:
http://localhost/phpmyadmin --> con la configuración por defecto
http://monohost --> con la configuración de VirtualHost para usar el MonoServer
Donde trabajo yo no soy el administrador, no puedo configurar el DNS global. Solo soy un desarrollador y a lo mejor lo que pregunté antes puede que tenga o no sentido.
Yo estoy haciendo un proyecto que necesita correr con apache, y siempre corre con la dirección http://localhost, sitio que se consulta sin proxy por la restricción que pongo en el navegador. El proyecto corre en MonoServer, mas yo también instalé phpmyadmin para trabajar más cómodo con mysql, y eso trabaja con el intérprete de php y no con mono.
El problema surge porque los dos corren en http://localhost, uno con la configuración para usar el MonoServer y otro con la configuración por default. Para cambiar de configuración lo que hago es como dije antes, configuro el httpd.conf, quito o pongo comentario según vaya a utilizar MonoServer o no. Si no lo voy a utilizar entonces pongo comentario en todo el archivo y me sale la configuración por defecto, si lo voy a utilizar entonces quito los comentarios que tienen que ver con el VirtualHost para MonoServer.
Pero yo deseo algo así:
http://localhost/phpmyadmin --> con la configuración por defecto
http://monohost --> con la configuración de VirtualHost para usar el MonoServer
Solo que, falto de almas en quienes verter la suya desbordante, muere ahogado el poeta.
José Martí
José Martí
Re: Configurar Apache
En ese caso solo necesitas editar el archivo /etc/hosts, y creas allí las entradas que necesites, por ejemplo:
En este caso solo necesitarías crear en sites-available una entrada con el nombre monohost, editarla a tu gusto y activarla, de la manera que mencioné anteriormente.
Código: Seleccionar todo
127.0.0.1 localhost.localdomain localhost
127.0.0.1 monohost
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke
- Edmund Burke
Re: Configurar Apache
Gracias hugo, ya me funciona.
Podrías explicarme por qué funciona? Tiene algo que ver ese archivo con el Apache2 o con algún DNS local?
Podrías explicarme por qué funciona? Tiene algo que ver ese archivo con el Apache2 o con algún DNS local?
Solo que, falto de almas en quienes verter la suya desbordante, muere ahogado el poeta.
José Martí
José Martí
Re: Configurar Apache
Obviamente que tiene que ver. La cosa es mas o menos así:
Cuando tu le dices al navegador: accede a http://monohost lo primero que el hace es averiguar la direción IP de ese equipo en las entradas de DNS locales (/etc/hosts) y si no resuelve ahi, sale a preguntar a los nameservers que estén declarados en /etc/resolv.conf
Una vez averiguada la dirección IP, se conforma un encabezado HTTP con la petición de la página y se emite dicha consulta al equipo en que se encuentra el servidor web, en este caso Apache, que extrae el nombre del servidor solicitado del encabezado y sirve el VirtualHost correspondiente (aunque haya varios compartiendo la misma dirección IP).
Cuando tu le dices al navegador: accede a http://monohost lo primero que el hace es averiguar la direción IP de ese equipo en las entradas de DNS locales (/etc/hosts) y si no resuelve ahi, sale a preguntar a los nameservers que estén declarados en /etc/resolv.conf
Una vez averiguada la dirección IP, se conforma un encabezado HTTP con la petición de la página y se emite dicha consulta al equipo en que se encuentra el servidor web, en este caso Apache, que extrae el nombre del servidor solicitado del encabezado y sirve el VirtualHost correspondiente (aunque haya varios compartiendo la misma dirección IP).
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke
- Edmund Burke
Re: Configurar Apache
Gracias nuevamente Hugo, ya entiendo.
Me pregunto cómo se configura un DNS local en Window, si es que existe
Me pregunto cómo se configura un DNS local en Window, si es que existe
Solo que, falto de almas en quienes verter la suya desbordante, muere ahogado el poeta.
José Martí
José Martí
Re: Configurar Apache
En Windows, puedes lograrlo editando el archivo %WINDIR%\System32\drivers\etc\hosts
Pero en general los miembros de GUTL evitamos instalar servicios en un sistema operativo que además de privativo, es ineficiente.
Pero en general los miembros de GUTL evitamos instalar servicios en un sistema operativo que además de privativo, es ineficiente.
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke
- Edmund Burke
Re: Configurar Apache
Cómo hago ahora para que apache sirva primero, al alguien hacer un pedido http a mi ip, el sitio monohost y no el que apache trae por defecto?
Solo que, falto de almas en quienes verter la suya desbordante, muere ahogado el poeta.
José Martí
José Martí
Re: Configurar Apache
Bueno, cuando no pides un virtualhost por nombre sino por IP, creo que toma precendencia la directiva DocumentRoot que tengas establecida en el archivo httpd.conf
Creo que podrías resolver colocando esto al principio del archivo conf/extra/httpd-vhosts.conf:
Quizas haciendo una entrada con este contenido en sites-available y poniendole como nombre algo que sea ordenado primero como 00_default (y activando el sitio, claro) sirva igual o mejor.
En caso contrario solo veo la opción de editar tu archivo de configuración principal, que a propósito, debería venir por defecto con la directiva ServerName localhost:80. De modo que podrías intentar colocando el sitio de apache en otro puerto, por ejemplo:
Una duda: quieres que salga monohost por defecto cuando navegas desde tu PC, o desde otro equipo de la red?
Creo que podrías resolver colocando esto al principio del archivo conf/extra/httpd-vhosts.conf:
Código: Seleccionar todo
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "/ruta/a/tu/directorio/web"
ServerName nombredetuequipo.tudominio.tld
ErrorLog "logs/error.log"
CustomLog "logs/access.log" common
</VirtualHost>
En caso contrario solo veo la opción de editar tu archivo de configuración principal, que a propósito, debería venir por defecto con la directiva ServerName localhost:80. De modo que podrías intentar colocando el sitio de apache en otro puerto, por ejemplo:
Código: Seleccionar todo
Listen 127.0.0.1:8080
Listen 80
ServerName localhost:8080
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "/var/www/">
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Deny from all
Allow from 127.0.0.1
</Directory>
Lo único que necesita el mal para triunfar es que los hombres buenos no hagan nada.
- Edmund Burke
- Edmund Burke