¿Cuándo exactamente necesito usar un proxy con capas abiertas? He leído mucho sobre esto, pero parece que no puedo encontrar una respuesta definitiva. Preguntándome si esta es la ruta de mis problemas.
Por ejemplo, si tengo un servidor que ejecuta Geoserver (WFS) en el puerto 8080 y Apache (que sirve OpenLayers) en el puerto 80, ¿necesitaría usar un proxy?
Si los servidores están físicamente separados, ¿necesitaría usar proxy?
fuente
por favor lea aquí .
¿Por qué necesito un ProxyHost?
Espero que te ayude...
fuente
Cuando se desarrolló JavaScript por primera vez, no se imaginó que tendría un uso tan amplio y, por lo tanto, se hicieron muchas suposiciones durante su desarrollo, que se han vuelto problemáticas hoy en día.
Cuando Microsoft diseñó el
XMLHttpRequest
en su navegador Internet Explorer, fue diseñado con una gran limitación.El
XMLHttpRequest
no le permite realizar una solicitud directamente a otro servidor. Incluso dos servidores que se ejecutan en la misma máquina, pero diferentes puertos tienen esta limitación.Lo que debe hacer es tener un proxy cgi en su servidor web apache (puerto 80), y usar OpenLayers.ProxyHost para señalarlo.
El sitio OpenLayers tiene una respuesta a preguntas frecuentes para este problema :
Después de haber copiado el archivo proxy a su servidor, no olvide editar la
allowedHosts
matriz.Aunque las respuestas existentes son bastante antiguas, creo que debe haber una respuesta exhaustiva, ya que esta pregunta se ha convertido en una pregunta canónica, y muchas otras están cerradas por duplicado. Este es mi intento de responder a esta pregunta, basado en otras respuestas que he escrito en este sitio.
fuente