• Publicidad

VirtualHost no me funciona bien

Todo lo relacionado con lenguajes de programación distintos de Perl: PHP, Java, C++, Ruby, Python, etc.

VirtualHost no me funciona bien

Notapor marcmb » 2010-05-18 15:02 @668

Buenas, tengo 3 subdominios en no-ip y desde mi ordenador (el servidor) me abre las 3 perfectamente, con los virtualhost configurados en Apache, pero si voy desde otro PC me abre siempre la misma, es decir, tengo web1.com, web2.com y web3.net, y ponga la que ponga va siempre al directorio de web2.com.

web1.com apunta a /var/www/web1
web2.com apunta a /var/www/web2
web3.com apunta a /var/www/web3

Es algo que me tiene un poco mosca. Por casualidad, la que más me importa que funcione es la que se abre, pero claro, estaría bien poder usar las otras. ¿Alguien sabe algo sobre el tema?
Si queréis os paso el httpd.conf y el /etc/hosts a ver si no lo tengo bien...
Avatar de Usuario
marcmb
Perlero nuevo
Perlero nuevo
 
Mensajes: 55
Registrado: 2010-05-03 07:42 @362
Ubicación: Girona

Publicidad

Re: VirtualHost no me funciona bien

Notapor explorer » 2010-05-18 15:19 @679

Pues sí... parece una mala configuración de los dominios virtuales.

Será conveniente que publicaras los ficheros de configuración, después de haber quitado la información sensible.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: VirtualHost no me funciona bien

Notapor marcmb » 2010-05-18 16:26 @726

Archivo /etc/hosts
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
127.0.0.1       web1.servegame.com
127.0.0.1       web2.sytes.net
127.0.0.1       web3.servegame.com
127.0.0.1       localhost
127.0.0.1       marc-casa

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Archivo httpd.conf
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
NameVirtualHost 127.0.0.1

AddHandler cgi-script .cgi .sh .pl .ida
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory /usr/lib/cgi-bin/>
    AllowOverride None
    Options ExecCGI FollowSymLinks -MultiViews +SymLinksIfOwnerMatch
    Order allow,deny
    Allow from all
</Directory>
<VirtualHost 127.0.0.1>
    ServerName web2.sytes.net
    DocumentRoot /var/www/web2/
    ServerAdmin [email protected]
    ErrorLog /var/log/apache2/web2.sytes.net-error.log
    CustomLog /var/log/apache2/web2.sytes.net-access.log combined
</VirtualHost>
<VirtualHost 127.0.0.1>
    ServerName web1.servegame.com
    DocumentRoot /var/www/web1/
    ServerAdmin [email protected]
    ErrorLog /var/log/apache2/web1.servegame.com-error.log
    CustomLog /var/log/apache2/web1.servegame.com-access.log combined
</VirtualHost>
<VirtualHost 127.0.0.1>
    ServerName web3.servegame.com
    DocumentRoot /var/www/web3/
    ServerAdmin [email protected]
    ErrorLog /var/log/apache2/web3.servegame.com-error.log
    CustomLog /var/log/apache2/web3.servegame.com-access.log combined
</VirtualHost>
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Estos son los archivos.
Tanto si vamos a web1 como a web2 como a web3 siempre va a web3, pero en el PC funciona perfectamente.
Avatar de Usuario
marcmb
Perlero nuevo
Perlero nuevo
 
Mensajes: 55
Registrado: 2010-05-03 07:42 @362
Ubicación: Girona

Re: VirtualHost no me funciona bien

Notapor explorer » 2010-05-18 17:15 @760

Yo no veo problemas, pero hay que remarcar algo importante: son las entradas ServerName las que definen los dominios virtuales. Si la petición no es *exactamente* igual a esos dominios, el servidor web responderá con el dominio definido por defecto.

Un ejemplo. Si tenemos un dominio virtual llamado perlenespanol.com, podemos indicar con
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
     ServerName www.perlenespanol.com
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


que queremos que esa sea la dirección del servidor para ese dominio virtual.

Pero... ¿qué pasa si el usuario, en el navegador, escribe solamente perlenespanol.com?, pues que no responde el dominio virtual, porque no coincide con el que está definido.

Para evitar estos problemas, aparte de tener definidas todas las combinaciones en los DNS, podemos poner en la entrada ServerAlias todas las combinaciones de la dirección que queremos asociar a ese dominio virtual. Lo pondríamos así:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
    ServerName www.perlenespanol.com
    ServerAlias perlenespanol.com *.perlenespanol.com
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4


Ahora, con estas dos líneas, el servidor web responderá a direcciones, solicitadas por el usuario, como estas:
Sintáxis: [ Descargar ] [ Ocultar ]
Using text Syntax Highlighting
perlenespanol.com
www.perlenespanol.com
web.perlenespanol.com
ww.perlenespanol.com
w.perlenespanol.com
tutoriales.perlenespanol.com
foro-especializado-para-marcmb.perlenespanol.com
Coloreado en 0.000 segundos, usando GeSHi 1.0.8.4
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: VirtualHost no me funciona bien

Notapor marcmb » 2010-05-20 10:26 @476

Gracias explorer, acabo de probarlo y desde el propio server funciona todo bien (como antes), pero si voy desde cualquier otro PC no funciona, siempre apunta a la misma página...

Te comentaré algo, en no-ip lo tengo configurado para que cuando vamos a cualquier dominio llame a la IP de mi PC y desde el Apache tengo los virtual host, pero me pregunto si el Apache en vez de recibir marc.sytes.net recibe algo como 56.76.25.15 y por eso no funcionan los virtual host. Este tema me tiene muy intrigado...
Avatar de Usuario
marcmb
Perlero nuevo
Perlero nuevo
 
Mensajes: 55
Registrado: 2010-05-03 07:42 @362
Ubicación: Girona

Re: VirtualHost no me funciona bien

Notapor marcmb » 2010-05-20 11:16 @511

¡¡Por fin me funciona!!

Después de leerme más de 20 manuales he encontrado el fallo o el descuido (que no sale en la mayoría de manuales).

Aparte de editar /etc/hosts y /etc/apache2/httpd.conf tenía que crear los sitios en /etc/apache2/sites-available/ y luego aplicar sudo a2ensite "nombre del dominio". Es decir:

Si creamos marc.sytes.com se tiene que coger el archivo default de la carpeta sites-available y copiar todo lo que contiene y crear otro que se llamaría en este caso marc.sytes.com y cambiarle el nombre del servidor y la carpeta. Luego de hacer ésto aplicar sudo a2ensite marc.sytes.com y por último sudo /etc/init.d/apache reload (Todo esto en Ubuntu).

Y todo funcionando perfectamente :)

Me queda una duda, ¿de que sirve exactamente httpd.conf? ¿Es sólo para usarlo en ámbito local?
Avatar de Usuario
marcmb
Perlero nuevo
Perlero nuevo
 
Mensajes: 55
Registrado: 2010-05-03 07:42 @362
Ubicación: Girona

Re: VirtualHost no me funciona bien

Notapor explorer » 2010-05-20 14:22 @640

O sea... que se te ha olvidado un paso importante en la puesta en marcha de los dominios :)

El fichero httpd.conf es uno de los ficheros de configuración principales de Apache.

Según la distribución, almacenará la configuración propio de la máquina en donde se encuentra el Apache, o una configuración global que será sobreescrita en cada actualización del Apache.
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Programación en general

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 7 invitados

cron