Configurar SubDominios en Apache

Iniciado por Skeletron, 31 Mayo 2012, 21:30 PM

0 Miembros y 1 Visitante están viendo este tema.

Skeletron

Hola gente.
Tengo una pregunta:
Como se configuran subdominios en apache?

En 1 mismo <VirtualHost> puedo hacerlo?

Les comento lo que me está pasando:
Yo creo esto:
<VirtualHost *:8081>
    ServerAdmin noel_fb@hotmail.com
    DocumentRoot "D:/WAMP/www/jose"
    ServerAlias *.jose.com
    ErrorLog "D:/WAMP/logs/jose/error_log.log"
    CustomLog "D:/WAMP/logs/jose/custom_log.log" common
</VirtualHost>

<VirtualHost *:8081>
    ServerAdmin noel_fb@hotmail.com
    DocumentRoot "D:/WAMP/www/vanimus"
    ServerAlias *.vanimus.com
    ErrorLog "D:/WAMP/logs/vanimus/error_log.log"
    CustomLog "D:/WAMP/logs/vanimus/custom_log.log" common
</VirtualHost>

Y me pasa lo siguiente:
Si ingreso a WWW.vanimus.com, me ingresa bien a la carpeta de Vanimus.
Pero si lo pongo SIN WWW, me ingresa a la carpeta de JOSE (la 1º definida).

Yo creí que con el SERVEALIAS ya es sufiente para definir que "AQUI VIENEN TODOS LOS SUBDOMINIOS". No es así?

O tendré que crear esto?: (CON SERVER NAME)
<VirtualHost *:8081>
    ServerAdmin noel_fb@hotmail.com
    DocumentRoot "D:/WAMP/www/vanimus"
    ServerName vanimus.com
    ErrorLog "D:/WAMP/logs/vanimus/error_log.log"
    CustomLog "D:/WAMP/logs/vanimus/custom_log.log" common
</VirtualHost>
<VirtualHost *:8081>
    ServerAdmin noel_fb@hotmail.com
    DocumentRoot "D:/WAMP/www/vanimus"
    ServerName www.vanimus.com
    ErrorLog "D:/WAMP/logs/vanimus/error_log.log"
    CustomLog "D:/WAMP/logs/vanimus/custom_log.log" common
</VirtualHost>

Como hago para decir que TODOS los SUBDOMINIOS vayan ahí? Algo me está resultado raro :/

Aclaro algo:
Estoy haciendolo con WAMP. Wamp tiene un archivo HTTPD desde el cual incluye a otro donde ahí se definen lo virtualhost.
Pero en el HTTPD hay definidas algunas otras cosas al respecto. Tendría que borrarlas?

Este es el HTTP:
ServerRoot "D:/WAMP/bin/apache/apache2.2.21"

Listen 8081

LoadModule actions_module modules/mod_actions.so
(aqui muchos modulos)
LoadModule php5_module "D:/WAMP/bin/php/php5.3.10/php5apache2_2.dll"

<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>

User daemon
Group daemon

</IfModule>
</IfModule>

ServerAdmin noel_fb@hotmail.com

ServerName localhost:8081

DocumentRoot "D:/WAMP/www/"

<Directory />
    Options FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
</Directory>

<Directory "D:/WAMP/www/">
    Options Indexes FollowSymLinks

    AllowOverride all
    Order Allow,Deny
    Allow from all

</Directory>

<IfModule dir_module>
    DirectoryIndex index.php index.php3 index.html index.htm
</IfModule>

<FilesMatch "^\.ht">
    Order allow,deny
    Deny from all
    Satisfy All
</FilesMatch>

ErrorLog "D:/WAMP/logs/apache_error.log"

LogLevel warn

<IfModule log_config_module>
    LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
    LogFormat "%h %l %u %t \"%r\" %>s %b" common

    <IfModule logio_module>
      LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
    </IfModule>

    CustomLog "D:/WAMP/logs/access.log" common
</IfModule>

<IfModule alias_module>
    ScriptAlias /cgi-bin/ "cgi-bin/"
</IfModule>

<IfModule cgid_module>
</IfModule>

<Directory "cgi-bin">
    AllowOverride None
    Options None
    Order allow,deny
    Allow from all
</Directory>

DefaultType text/plain

<IfModule mime_module>
    TypesConfig conf/mime.types

    AddType application/x-compress .Z
    AddType application/x-gzip .gz .tgz
    AddType application/x-httpd-php .php
    AddType application/x-httpd-php .php3
</IfModule>

# Fancy directory listings
Include conf/extra/httpd-autoindex.conf

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

Include "D:/WAMP/alias/*"

el-brujo

vanimus.com no concuerda con el patrón *.vanimus.com !!!

vanimus.com != *.vanimus.com
www.vanimus.com = *.vanimus.com

vanimus.com no es un subdomonio, es el dominio.

Añade:

Citar
ServerName vanimus.com
ServerAlias *.vanimus.com

Ahora si que te funcionará, vanimus.com, y además (*.vanimus.com) lo que sea punto vanimus.com

Sólo en el caso que no haya ninguna conicidencia, entonces irá a parar al primer vhost.

Citar
Cuando llega una petición, el servidor primero verifica si se está usando una dirección IP que coincide con el valor de la directiva NameVirtualHost. Si es el caso, mirará en cada sección <VirtualHost> cuya IP coincida e intentará encontrar si el valor de la directiva ServerName o de la directiva ServerAlias coincide con el nombre del sitio web de la petición. Si encuentra una coincidencia, usa la configuración de ese servidor. Si no la encuentra, usa el primer host virtual de la lista cuya dirección IP coincida con el de la petición.


Skeletron

Es verdaddd!! QUE GIL!!!
En la expresion regular me sobra el PUNTO! Que idiota!

Mil gracias por el dato Brujo. Ahora me cuadra todo. Era una boludes. Como siempre.

Saludos!