Estoy usando el mapa OpenLayers usando el JavaScript alojado:
<script src="http://openlayers.org/api/2.13.1/OpenLayers.js"></script>
Pero mi cliente tiene SSL instalado y cuando trato de ejecutar mi página de mapa muestra:
(2)[blocked] The page at https://domain.com/rwd/ ran insecure content
from http://openlayers.org/api/2.13.1/OpenLayers.js.
Así que probé https one y resulta que Openlayers no tiene uno
https://openlayers.org/api/2.13.1/OpenLayers.js
Luego descargo el Openstreet js y lo alojo en el servidor del cliente, pero luego se pierden todos los estilos e imágenes relacionadas. Aunque muestra el mapa, básicamente aparecen numerosas advertencias en la consola y me temo que esto podría ser rechazado en Play Store más o menos. Estoy desarrollando una aplicación híbrida que también se ejecuta en el servidor.
Advertencias ahora :
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://b.tile.openstreetmap.org/14/8743/5624.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://b.tile.openstreetmap.org/14/8742/5624.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8743/5623.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://b.tile.openstreetmap.org/14/8743/5625.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8744/5624.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://a.tile.openstreetmap.org/14/8742/5623.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8742/5625.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://a.tile.openstreetmap.org/14/8744/5623.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://a.tile.openstreetmap.org/14/8744/5625.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://a.tile.openstreetmap.org/14/8743/5622.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8742/5622.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8745/5624.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://b.tile.openstreetmap.org/14/8744/5622.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://b.tile.openstreetmap.org/14/8745/5623.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8745/5625.png.
The page at https://domain.com/rwd/#/customer-plot/234 displayed insecure content from http://c.tile.openstreetmap.org/14/8745/5622.png.
GET https://domain.com/rwd/js/lib/theme/default/style.css 404 (Not Found)
/*This the corresponding stylesheet that is loaded via Openstreet.js*/
Intenté con cdn con SSL y aún el mismo problema:
https://cdnjs.cloudflare.com/ajax/libs/openlayers/2.11/OpenLayers.js
Descargué todo el repositorio de GitHub para Openstreet pensando que esto resolverá el problema de imagen y CSS.
https://github.com/openlayers/openlayers
Si bien lo anterior resolvió los problemas de CSS , sin embargo, el mapa se muestra cargando imágenes de otro sitio externo tile.openstreet.com
. Parece que tengo que cavar en openstreet js también ... :( ..
Importante : estoy usando backbone.js.
Nota : He pasado por problemas de autenticación básica de OpenLayers 2.12 y http y eso no me ha ayudado. No tengo ningún control sobre la configuración del servidor. Solo tengo acceso a una carpeta donde necesito configurar el sitio web y todo lo demás funciona bien, pero este SSL es problemático.
Se cambió la dirección real del sitio web para evitar que Google lo vincule.
fuente
Respuestas:
OpenLayers.js: recomendaría descargar la lib y vincularla a su servidor de aplicaciones. De esta manera, puede tener un control total sobre su URL y contenido.
advertencias de "contenido inseguro": eso también me pasó a mí. En OpenLayers 2.13.1, cuando crea una instancia de OpenLayers.Layer.OSM, se configura de manera predeterminada para HTTP. De OpenLayers.Layer.OSM doc :
url {String} El esquema de URL del conjunto de mosaicos. El valor predeterminado es http: // [a | b | c] .tile.openstreetmap.org / $ {z} / $ {x} / $ {y} .png
En lugar de eso, utilicé valores explícitos para la matriz de esquema de URL, que contiene URL independientes del protocolo
fuente
Los servidores de mosaicos oficiales de OSM no proporcionan ningún acceso a través de SSL. Son bienes públicos compartidos y no deben ser utilizados por aplicaciones con mucho tráfico. Si desea usarlos de todos modos, debe estar de acuerdo con el mensaje "algunos contenidos no están encriptados" en los navegadores.
Si desea tener un cifrado completo, debe pagar por los CDN de mapas comerciales con SSL:
fuente
Necesita anular los formularios
Widget
. Ejemplo:y cambiar la clase de administrador
Un ejemplo de modelo
El campo de anulación de código forma widgets para una nueva iteración multimedia. Esto elimina el contenido http
http://openlayers.org/api/2.13.1/OpenLayers.js
de los medios.fuente