mobile - WAMPServer, servidor de acceso desde teléfono móvil
virtualhost (1)
Desde que publiqué la respuesta a la que hizo referencia, he decidido una solución más simple.
Cuál es el problema real
Debido a que no podemos jugar con la configuración de un teléfono como lo podemos hacer con una PC, el teléfono nunca puede encontrar el nombre de dominio que creamos en nuestra definición de Host Virtual en la máquina del Servidor, porque no existe en ningún Servidor DNS para que localice la dirección IP y un servidor DNS es el único lugar donde puede mirar un teléfono, a menos que se haya roto la cárcel .
Si desea acceder a uno de sus dominios de Virtual Hosts desde otra PC, simplemente puede agregar una línea como esta en el archivo HOSTS en la otra PC como esta.
192.168.0.10 example.local
Pero no puede hacerlo en un teléfono / tableta .
Lo que Apache espera poder asociar una solicitud a un Vhost
Cuando creamos un Host virtual de Apache, en realidad le estamos diciendo a Apache que mire el nombre de dominio en la conexión entrante y que coincida con ese nombre de dominio con un
ServerName
que existe en una de nuestras múltiples definiciones de Hosts virtuales.
Pero si usamos, por ejemplo,
example.lccal
como nuestro dominio virtualmente alojado cuando intentamos conectarnos a eso desde nuestro teléfono, el teléfono realiza una Búsqueda de DNS y no encuentra ese dominio y, por lo tanto, no puede obtener su dirección IP.
La forma más sencilla de evitar esto es:
Suponiendo que no tenemos acceso para agregar registros a un servidor DNS, tenemos que encontrar una solución diferente.
La más simple de ellas es usar la dirección IP de la PC que ejecuta el servidor WAMPServer (Apache) y un número de puerto específico. Es un número de puerto diferente para cada uno de nuestros sitios que queremos usar desde un teléfono.
Entonces como hacemos esto
Agregue el nuevo puerto de escucha a
httpd.conf
así después de las 2 declaraciones de
Listen
existentes
#Listen 12.34.56.78:80
Listen 0.0.0.0:80
Listen [::0]:80
Listen 0.0.0.0:8000
Listen [::0]:8000
Archivo
httpd-vhosts.conf
sugerido
#
# Virtual Hosts
#
# Always keep localhost, and always first in the list
# this way a ramdom look at your IP address from an external IP
# maybe a hack, will get told access denied
<VirtualHost *:80>
ServerName localhost
DocumentRoot c:/wamp/www
<Directory "c:/wamp/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
# The normal Vhost definition for one of our sites
<VirtualHost *:80>
ServerName example.local
DocumentRoot "c:/websrc/example/www"
<Directory "d:/websrc/example/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
# Access example.dev from phone for testing
<VirtualHost *:8000>
ServerName example.local
DocumentRoot "c:/websrc/example/www"
<Directory "d:/websrc/example/www/">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
# assuming yoursubnet is 192.168.0.?
# allow any ip on your WIFI access
Require ip 192.168.0
</Directory>
</VirtualHost>
Reinicie Apache desde wampmanager después de completar estas ediciones.
Ahora prueba esto desde la PC WAMPServer usando
ServerName
es decir
example.dev
y desde el teléfono usando la ip de la PC que ejecuta WAMPServer con el número de puerto, es decir, 192.168.0.10:8000
Apache encontrará el código correcto para servir de ambas solicitudes.
Si desea que se pueda acceder a más de un host virtual desde su teléfono, simplemente duplique esta idea y cambie el número de puerto para cada nuevo sitio, digamos que usaría 8001,8002,8003, etc. Para tantos sitios como desee acceder .
También es posible que deba modificar su firewall para permitir el acceso en http en el puerto 8000, o en cualquier puerto que elija usar
Así que configuré algunos hosts virtuales con URL únicas y funcionan bien en el escritorio. Sin embargo, cuando conecto un dispositivo móvil en la red, parece que no puede acceder a nada correctamente, sino al localhost virtualhost predeterminado y eso es solo cuando es el único virtualhost que tengo.
Mi configuración y codificación es más o menos esto, excepto con un título de sitio diferente
host virtual del servidor wamp 3.0 en otro dispositivo
y aunque esa solución me redirige a mi URL única, carece de imágenes en un sitio web predeterminado de WordPress.
¿Alguien ha logrado que los dispositivos móviles accedan completamente a enlaces que no sean en localhost?