Configurar wildcard subdomains para tener subdominios dinámicos
Tener subdominios dinamicos es mucho más barato que tener varios dominios ya que solo necesitas uno y puede ser muy útil en tu web por ejemplo si vas a:
- internacionalizar el sitio: http://es.dominio.com, http://en.dominio.com
- para que cada usuario tenga su propio subdominio: http://gafeman.dominio.com
- para anuncios clasificados en una ciudad: http://madrid.dominio.com
Que sepa sólo se puede hacer en servidores dedicados, como por ejemplo hetzner.
Requisitos:
- Poder administrar el fichero de entradas DNS de tu dominio
- Tener apache y mod_rewrite en tu servidor
- tener permisos para conectarte al servidor via SSH
Pasos:
1. Editar entradas DNS del dominio, es un fichero con un contenido parecido a este:
www IN A ip
ftp IN CNAME www
imap IN CNAME www
loopback IN CNAME localhost
pop IN CNAME www
relay IN CNAME www
smtp IN CNAME www
@ IN MX 10 mail
añade la siguiente linea debajo de la linea que empieza por www:
* IN A www
2. Edita la configuración del dominio apache, tienes que añadir la siguiente linea en negrita para que acepte los subdominios:
ServerName dominio.com
ServerAlias *.dominio.com
ServerAdmin webmaster@localhost
3. Crea un fichero .htaccess en la raiz de tu servidor
Options -Indexes
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
4. Reinicia el apache, en la terminal y conectado por SSH a tu servidor ejecuta el siguiente comando:
/etc/init.d/apache2 reload
5. Obtiene el subdominio con PHP
$subdominio = current( explode( ‘.’, $_SERVER['HTTP_HOST'] ) );
Por ejemplo con el dominio http://madrid.dominio.com, $subdominio tendría el valor madrid.
Ejemplos:
Enlaces de interés:
Genial! Conocía todo menos la parte final de cómo obtener el subdominio en el código PHP!
Un apunte: en el punto 4, para reiniciar apache, dependiendo del servidor se usa un comando u otro, dependiendo de dónde se encuentra el ejecutable.
En el mio por ejemplo utilizo /usr/sbin/httpd -k restart cuando quiero reiniciar el servidor.
pues tu post esta buneo pero en realidad no se entiende mucho deberias de expecificar archivos y ruta para poder saber como va todo y si podes con figuras mejor ya que estoy tratando de configurar subdominios que esten en diferente servidor pero no lo he logrado si pudieras decirme como y como enlazar las otras maquina te lo agradeceria
Estoy tratando de hacerlo pero sin un servidor dedicado, con un compartido de host gatos, sigo experimentando, si consigo algo les aviso. xD
Si alguien consigue algo tambien aviseme. xD