OpenLayers基础:在IIS中部署并启用CGI

简介:

在使用OpenLayers过程中,若在IIS下部署,需要在IIS启用CGI,当前以IIS7为例进行介绍如何来启用CGI和相关的设置。启用CGI的目的是使用WFS的前提,因为WFS在请求过程中会出现跨域问题,所以根据OpenLayers的建议,只需要使用其自带的代理CGI。

1. 安装python

由于OpenLayers下的默认内置CGI是python实现的,所有要在机器上预先安装python运行环境,关于其安装,本文也不过多介绍,可以去官网http://www.python.org上下载安装即可。

2. 启用CGI

关于如下在IIS7中启用CGI,请参考本人前面的博文《在IIS7中启用CGI》,里面已做详细介绍,在此不做赘述,最终设置如下图。

3. 添加代理域

打开OpenLayers下的proxy.cgi,前部分代码如下:

 
  1. #!/usr/bin/env python 
  2.  
  3. """This is a blind proxy that we use to get around browser 
  4. restrictions that prevent the Javascript from loading pages not on the 
  5. same server as the Javascript.  This has several problems: it's less 
  6. efficient, it might break some sites, and it's a security risk because 
  7. people can use this proxy to browse the web and possibly do bad stuff 
  8. with it.  It only loads pages via http and https, but it can load any 
  9. content type. It supports GET and POST requests.""" 
  10.  
  11. import urllib2 
  12. import cgi 
  13. import sys, os 
  14.  
  15. # Designed to prevent Open Proxy type stuff. 
  16.  
  17. allowedHosts = ['www.openlayers.org''openlayers.org'
  18. '192.168.0.201:8088'
  19.                 'labs.metacarta.com''world.freemap.in',  
  20.                 'prototype.openmnnd.org''geo.openplans.org'
  21.                 'sigma.openplans.org''demo.opengeo.org'
  22.                 'www.openstreetmap.org''sample.avencia.com'
  23.  
  24. method = os.environ["REQUEST_METHOD"
  25. # ...

python变量allowedHosts中,默认已添加了openlayers相关的网站域名,在实际应用过程中,本人的GeoServer的IP为192.168.0.201:8088,将其添加到其中即可。

4. 指定代理地址

在openlayers在使用wfs时,只需要添加如下一行代码即可,proxy.cgi的路径可以跟据实际情况来指定,由于本人实际应用中,是将proxy.cgi放在当前程序的相同目录。

 
  1. OpenLayers.ProxyHost = "proxy.cgi?url="

P.S. 设置比较简单,持续应用中。


本文转自 彭金华  51CTO博客,原文链接:http://blog.51cto.com/pengjh/621188


相关文章
|
1月前
|
存储 网络安全 数据安全/隐私保护
Windows Server 2019 IIS HTTPS证书部署流程详解
Windows Server 2019 IIS HTTPS证书部署流程详解
|
1月前
|
JavaScript Windows
VUE部署到IIS中报404错误解决方案-配置URL重写
VUE部署到IIS中报404错误解决方案-配置URL重写
|
1月前
|
Kubernetes 网络安全 Windows
要在云效部署到阿里云服务器上的 Windows Server 上的 IIS
【2月更文挑战第18天】要在云效部署到阿里云服务器上的 Windows Server 上的 IIS
163 4
|
4月前
|
前端开发 JavaScript BI
云LIS云实验室信息管理系统源码,支持IIS独立部署,Docker部署
云LIS云实验室信息管理系统源码,支持IIS独立部署,Docker部署
55 0
|
9月前
|
存储 网络安全
IIS如何部署SSL证书
IIS服务器安装SSL证书
504 0
解决IIS Web部署 svg/woff/woff2字体找不到问题
最近项目中用到了fontawesome-webfont.svg等字体。部署项目后,发现没有<,+等符号,字体也不对,发现浏览器总是报找不到woff、woff2字体的错误。
210 0
解决IIS Web部署 svg/woff/woff2字体找不到问题
|
Linux iOS开发 MacOS
IIS10 部署网站报【HTTP 错误 500.19 - Internal Server Error】的解决办法
原有的 web 发布文件是可以正常部署 IIS10 上面运行的,由于本地电脑环境迁移,重新换了一个宿主机部署 IIS10,网站运行提示如下信息:HTTP 错误 `500.19 - Internal Server Error` 无法访问请求的页面,因为该页的相关配置数据无效。详细错误信息:模块 `IIS Web Core` 通知 `未知 处理程序 尚未确定 错误...
1474 0
IIS10 部署网站报【HTTP 错误 500.19 - Internal Server Error】的解决办法
|
Web App开发 开发框架 缓存
IIS 部署网站对 OPTIONS 请求直接返回 40x 的处理
了解 OPTIONS 请求的基本功能、作用和大概拦截的原因,逐一排查,分别讲解在 asp.net (.net framework 时代)和 asp.net core (.net core/.net 时代) 的处理方式,OPTIONS 请求在不同的浏览器中默认请求行为表现不一致,通过设置 SetPreflightMaxAge (asp.net core 方式)的最大缓存时间,间接的优化...
331 0
IIS 部署网站对 OPTIONS 请求直接返回 40x 的处理
|
存储 网络安全 数据安全/隐私保护
SSL 数字证书-IIS 证书配置部署|学习笔记
快速学习 SSL 数字证书-IIS 证书配置部署
160 0