Comodines en un archivo de hosts de Windows
Quiero configurar mi máquina de desarrollo local para que cualquier solicitud *.local
sea redirigida a localhost
. La idea es que a medida que desarrollo varios sitios, puedo simplemente agregar vhosts a Apache llamados site1.local
, site2.local
etc., y hacer que todos se resuelvan en localhost
, mientras Apache sirve un sitio diferente en consecuencia.
Estoy en Windows XP.
Intenté agregar
127.0.0.1 *.local
a mi c:\windows\system32\drivers\etc\hosts
archivo, también probé:
127.0.0.1 .local
Ninguno de los cuales parece funcionar.
Sé que puedo configurarlos en diferentes números de puerto, pero eso es complicado ya que es difícil recordar qué puerto es cuál.
No quiero tener que configurar un servidor DNS local ni nada complicado, ¿alguna sugerencia?
Acrylic DNS Proxy (gratuito y de código abierto) hace el trabajo. Crea un servidor DNS proxy (en su propia computadora) con su propio archivo de hosts. El archivo de hosts acepta comodines.
Descargar desde el sitio web oficial.
http://mayakron.altervista.org/support/browse.php?path=Acrylic&name=Home
Configurar el proxy DNS acrílico
Para configurar Acrylic DNS Proxy, instálelo desde el enlace anterior y luego vaya a:
- Comenzar
- Programas
- Proxy DNS acrílico
- configuración
- Editar archivo de hosts personalizados (AcrylicHosts.txt)
Agregue las siguientes líneas al final del archivo:
127.0.0.1 *.localhost
127.0.0.1 *.local
127.0.0.1 *.lc
Reinicie el servicio de Acrylic DNS Proxy:
- Comenzar
- Programas
- Proxy DNS acrílico
- configuración
- Reiniciar el servicio acrílico
También deberá ajustar su configuración de DNS en la configuración de su interfaz de red:
- Comenzar
- Panel de control
- Redes e Internet
- Conexiones de red
- Propiedades de conexión de área local
- TCP/IPv4
Configure "Usar la siguiente dirección de servidor DNS":
Preferred DNS Server: 127.0.0.1
Si luego combina esta respuesta con la respuesta de jeremyasnyder (usando VirtualDocumentRoot
), podrá configurar automáticamente dominios/hosts virtuales simplemente creando un directorio.
Para responder a su pregunta, no puede utilizar comodines en el archivo de hosts en Windows.
Sin embargo, si solo desea cambiar el archivo de hosts para que los sitios nuevos funcionen... puede configurar su Apache de esta manera y no tiene que seguir editando su configuración:
http://postpostmodern.com/instructional/a-smarter-mamp/
Básicamente, un resumen rápido basado en mi configuración, agregue lo siguiente a su archivo apache.conf:
LoadModule vhost_alias_module modules/mod_vhost_alias.so
NameVirtualHost *:80
<Directory "/xampp/sites">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
VirtualDocumentRoot c:/xampp/sites/%-1/%-2+/
</VirtualHost>
Esto me permite agregar una entrada como:
127.0.0.1 test.dev
y luego cree el directorio, c:\xampp\sites\dev\test y coloque los archivos necesarios allí y simplemente funciona.
La otra opción es usar <Directory>
etiquetas en apache.conf y hacer referencia a las páginas de http://localhost/project/ .
No creo que sea posible.
De todos modos, debe modificar las entradas de Apache virtualroot cada vez que agrega un nuevo sitio y ubicación, por lo que no es un gran trabajo sincronizar el nuevo nombre con el archivo vhost de Windows.
Actualización: consulte la siguiente respuesta y los comentarios sobre esta respuesta. Esta respuesta tiene varios años y ya no es correcta.