Http-WMS-Layer im https-kvwmap ohne Sicherheitshinweis einbinden
Aus kvwmap
Wenn kvwmap über https aufgerufen wird, bekommt man im Internet Explorer beim Aufruf von http-WMS eine Sicherheitsmeldung, dass unverschlüsselte Daten auf einer verschlüsselten Seite angezeigt werden sollen. Um diese Meldung zu umgehen, ruft man den WMS nicht direkt, sondern über einen https-Proxy auf dem eigenen Server auf. Dazu legt man einfach folgende Datei https_proxy.php
<? function https_proxy(){ $params = array_keys($_REQUEST); for($i = 0; $i < count($_REQUEST); $i++){ $url.='&'.$params[$i].'='.$_REQUEST[$params[$i]]; } ob_end_clean(); header('content-type:'.$_REQUEST['format']); header("Pragma: public"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); header('Content-Disposition: filename=test.png'); $ctx = stream_context_create(array('http' => array('timeout' => 3))); print(file_get_contents($_REQUEST['url'].'?'.$url, 0, $ctx)); } https_proxy(); ?>
in ein Web-Verzeichnis auf dem eigenen kvwmap-Server. Dann ändert man die connection des WMS-Layer auf
https://eigener-kvwmap-server/https_proxy.php?url=http://wms-server&weitere_parameter
(Dabei ist zu beachten, dass, wenn vorher in der connection ein "?" stand, daraus dann ein "&" werden muss, weil das "?" ja schon vor "url=.." steht)
Damit das Skript funktioniert, ist PHP 5 Voraussetzung.