VARIOS DOMINIOS CON UNA IP FIJA EN APACHE

Clarabel
14 de Diciembre del 2004
Hola:

Antes de molestar aquí en el foro, como es mi costumbre lo he revisado entero (como es mi costumbre) y no he encontrado nada.

My problem: Necesito configurar varios dominios en Apache instalados en un Win XP Pro con PHP, MySql y Perl (FoxServ), desde una misma IP. Apache está instalado en local, y se me ha secado el rimmel de las pestañas de mirar en la red de cómo configurarlo para que un nuevo dominio (VirtualDomain) se redireccione a una ruta local del disco duro.

No sé cómo hacerlo, ni me coge el dominio, ni se entera de la ruta que le doy ni "flowers".

¿Alguien se ha encontrado con este problema que me pueda ayudar?

GRACIAS POR ADELANTADO.

rargueso
14 de Diciembre del 2004
Efectivamente hay tocar la config del apache:

Como comenta Etxe tienes que tocar las directivas ServerName y NameVirtualHost y poner como parametro tu ip local (usa ip config para saberla, o bien usa loopback: 127.0.0.1).

Para cada virtual host usaremos:

<VirtualHost tuip>
ServerName dominio
DocumentRoot C:/ruta_al_directorio_raiz_del_web
</VirtualHost>

Con esas dos directivas sera suficiente para el servidor de desarrollo.

El tema es que si pones la ip en el navegador solo se muestra el primer virtual hosts de todos los definidos. ¿Como lo solucionamos? Pues editamos nuestro fichero hosts y encontramos algo asi:
127.0.0.1 localhost

Añadimos los dominios:

tuip dominio

Y ahora tu navegador resolvera ese dominio contra tu equipo.

Si hay dudas con esto pues lo comentais.

Saludos



icnius
14 de Diciembre del 2004

Mi problema sigue a lo de estos compañeros.

En mi caso mediante un modem adsl router tenia configurada mi web y funcionaba correctamente.

es decir en apache mi configuracion era:

ServerName localhost:80
NameVirtualHost ipglobal


<VirtualHost ipglobap>
ServerName ipglobal
DocumentRoot C:/ruta_al_directorio_raiz_del_web
</VirtualHost>


de esta manera poniendo la ipglobal podia acceder a mi web desde cualquier punto de internet.

El problema es que monte un router y mapee la direccion iplocal para acceder al puerto 80.

El problema que tengo es que ahora al teclear mi ipglobal me aparece la pagina de no se puede mostrar paguina.

asi pues configure el apache como
ServerName localhost:80
NameVirtualHost iplocal


<VirtualHost iplocal>
ServerName iplocal
DocumentRoot C:/ruta_al_directorio_raiz_del_web
</VirtualHost>

Segun el fabricante del router eso no es problema del router sino que debe ser del apache.

¿me podrias comentar un poco todo esto a ver si encuentro la solucion?

el_vago
14 de Diciembre del 2004
me gustaria saber si esto mismo se puede hacer con un dominio q no exista. por ejemplo para que solo funcione dentro de una red privada y evitar tener que poner la ip para cargar la pagina.

javier
14 de Diciembre del 2004
He hecho la configuración parecida y se puede ver dos sitos web desde mi servidor. ¿Como puedo acceder a ambos sitios remotamente desde otro ordenador?

Gracias

Etxe
14 de Diciembre del 2004
Hola, tienes que buscar el archivo httpd.conf en el directorio donde tengas instalado Apache y abrirlo con un editor de texto (por ejemplo, el bloc de notas de Windows) para editarlo. Después debes añadir la directiva VirtualHost de la siguiente manera:

NameVirtualHost 111.22.33.44

<VirtualHost 111.22.33.44>
ServerName www.domain.tld
DocumentRoot /www/domain
</VirtualHost>

<VirtualHost 111.22.33.44>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>
Este ejemplo lo he sacado de la documentación del servidor Apache (la puedes localizar por ejemplo en http://quark.fe.up.pt/ApachES/manual/index.html.en y en http://httpd.apache.org/docs/, vete a la sección "Virtual Hosts"). En el ejemplo puedes observar que se indica la dirección IP, detrás de "ServerName" el nombre del dominio, y detrás de "DocumentRoot" la ruta física donde se ubican los documentos que quieres que constituyan el contenido de ese dominio. En el ejemplo propuesto en el manual de Apache, se especifican dos dominios diferentes para una misma IP, pero tú puedes añadir los que quieras. Por cierto, estas líneas las tienes que incluir detrás de la línea:

ServerName tudominio

que encontrarás un poco después del principio del archivo httpd.conf, y que suele estar detrás del comentario:

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

En fin, espero haberte ayudado, un saludo.

Etxe
14 de Diciembre del 2004
Hola, tienes que buscar el archivo httpd.conf en el directorio donde tengas instalado Apache y abrirlo con un editor de texto (por ejemplo, el bloc de notas de Windows) para editarlo. Después debes añadir la directiva VirtualHost de la siguiente manera:

NameVirtualHost 111.22.33.44

<VirtualHost 111.22.33.44>
ServerName www.domain.tld
DocumentRoot /www/domain
</VirtualHost>

<VirtualHost 111.22.33.44>
ServerName www.otherdomain.tld
DocumentRoot /www/otherdomain
</VirtualHost>
Este ejemplo lo he sacado de la documentación del servidor Apache (la puedes localizar por ejemplo en http://quark.fe.up.pt/ApachES/manual/index.html.en y en http://httpd.apache.org/docs/, vete a la sección "Virtual Hosts"). En el ejemplo puedes observar que se indica la dirección IP, detrás de "ServerName" el nombre del dominio, y detrás de "DocumentRoot" la ruta física donde se ubican los documentos que quieres que constituyan el contenido de ese dominio. En el ejemplo propuesto en el manual de Apache, se especifican dos dominios diferentes para una misma IP, pero tú puedes añadir los que quieras. Por cierto, estas líneas las tienes que incluir detrás de la línea:

ServerName tudominio

que encontrarás un poco después del principio del archivo httpd.conf, y que suele estar detrás del comentario:

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

En fin, espero haberte ayudado, un saludo.

Clarabel
14 de Diciembre del 2004
GRACIAS POR TU INTERÉS.

Me he estudiado las FAQS de Apache, y he escaneado todos los foros donde se trata esto de los que Google puede mostrar. ¡He visto hasta los de Linux!

A lo mejor, es que no se puede hacer lo que quiero. Me explico:

Yo, lo que quiero, es que cuando ponga en la barra del explorador http://www.midominio.kk, vaya a la ruta local donde tengo alojado ese dominio, que esta en una subcarpeta de donde está el dominio principal. ¿Cómo hacerlo? No tengo ni idea, mi tiempo lo cuento, por botes de rimmel, así que me he comprado 4 cajas, hasta que al "indio" este le "mole" hacer lo que quiero.

Etxe
14 de Diciembre del 2004
Clarabel, entiendo perfectamente lo que preguntas, y te he explicado como hacerlo en mi anterior mensaje. No obstante trataré de explicartelo otra vez con mayor claridad.

Parto de la base de que tienes instalado el servidor Apache en tu ordenador ¿ok? Lo tendrás instalado en el directorio "Apache" en el disco duro C (salvo que en la instalación especificases otro destino). Dentro de este directorio hay una carpeta, "conf", y dentro de ella un archivo, "httpd.conf". Bien, una vez que tengas localizado este archivo, ábrelo en un editor de texto (por ejemplo, el Bloc de notas de Windows o Notepad) para cambiar su contenido. Busca, al principio del contenido de este archivo, lo siguiente:

### Section 1: Global Environment
#
# The directives in this section affect the overall operation of Apache,
# such as the number of concurrent requests it can handle or where it
# can find its configuration files.
#

Detrás escribe lo siguiente:

ServerName dominioPrincipal

NameVirtualHost tuDirecciónIP

<VirtualHost tuDirecciónIP>
ServerName dominioSecundario
DocumentRoot rutaLocaldelDominioSecundario
</VirtualHost>
Te pongo a continuación un ejemplo:

ServerName dominioPrincipal.com

NameVirtualHost 80.26.44.217

<VirtualHost 80.26.44.217>
ServerName www.dominioSecundario.net
DocumentRoot C:/archivos/dominioSecundario
</VirtualHost>

Sustituye la IP y los nombres de los dominios por tu IP y los correspondientes nombres de dominios que tengas, y una vez que lo hallas escrito guarda los cambios. Suponte por ejemplo que tienes un dominio principal y dos dominios secundarios y quieres que al teclear cada uno de ellos en el navegador éste "apunte" al lugar donde tienes los archivos de cada dominio. Deberías escribir en el lugar que te he dicho antes lo siguiente:

ServerName dominioPrincipal

NameVirtualHost tuDirecciónIP

<VirtualHost tuDirecciónIP>
ServerName dominioSecundario
DocumentRoot rutaLocaldelDominioSecundario
</VirtualHost>

<VirtualHost tuDirecciónIP>
ServerName otroDominioSecundario
DocumentRoot rutaLocaldelOtroDominioSecundario
</VirtualHost>
En fin, espero que ahora te halla quedado más claro. Si no es así no udes en hacérmelo saber.

Saludos.

chicomendez
14 de Diciembre del 2004
la verdad es que yo ya hice eso tu dices y la neta es que no me sale. yo trabajo con xp y Apache/2.0.40. ya hice lo que tu dices y no se por que no me sale, el servername localhost Port 80
hago esto mira

ServerName localhost:80
NameVirtualHost 10.2.19.213

<VirtualHost 10.2.19.213>
ServerName www.chico.isc
DocumentRoot D:/www/basta
</VirtualHost>
pero no sale
ya lo hice en la inea que tu dices y nada
ya lo hice en la linea donde trae apache el ejemplo y tampoco ya cambie las lineas y nada ya no se que hacer si no me sale me doy un tiro

Clarabel
14 de Diciembre del 2004
¿Alguien ha tratado de hacer esto?

¿Sabe alguien si necesito un DNS Server?

¿Conoce alguien alguno gratuito?

¿Es esto un Expediente X?

mm
14 de Diciembre del 2004
en sito tiene DNS gratuidos
www.cdmon.com