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

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

OpenLayers基础:在IIS中部署并启用CGI相关推荐

  1. 如何在 IIS 中部署 WCF

    在 IIS 中部署 WCF ,最重要的 是 Web.config 文件的配置 . 首先, 正常安装 IIS 2,注册 ServiceModelReg.exe -i 3,  WCF 的发布 , 需要 拷 ...

  2. 在IIS中写Python的CGI脚本

    原文:怎样在IIS中写Python的CGI脚本 1.安装好Python: 2.配置IIS:         a.打开管理工具-〉Internet信息服务:         b.在网站属性上右键,进入属 ...

  3. 关于.NET5在IIS中部署的几个问题总结

    本来我的系列教程已经慢慢剥离开IIS了,毕竟有了Docker容器以后,配合Nginx使用真的很不错.但是还是有很多同学使用IIS的,这个不可否认IIS的重要性.随着.NET的发布,很多小伙伴已经开始升 ...

  4. 在IIS中部署SPA应用,多么痛的领悟!

    目前公司的Web项目是SPA应用,采用前后端分离开发,所以有时也会倒腾Vue框架. " 前后端应用最终以容器形态.在k8s中部署, 为此我搭建了基于Gitlab flow的Devops流程. ...

  5. 在IIS中部署Asp.net Mvc

    概述: 最近在做一个MVC 3的项目,在部署服务器时破费了一番功夫,特将过程整理下来,希望可以帮到大家! 本文主要介绍在IIS5.1.IIS6.0.IIS7.5中安装配置MVC 3的具体办法! 正文: ...

  6. 在 IIS 中部署 SPA 应用,多么痛的领悟!

    作者 | 小码甲 来源 | 全栈码农画像(ID:nodotnet) 头图 |  CSDN 下载自东方IC 目前公司的 Web 项目是 SPA 应用,采用前后端分离开发,所以有时也会倒腾 Vue 框架. ...

  7. IIS中部署vue程序,刷新直接404

    问题描述:直接访问首页可以刷新,但是在其他页面时候是不能刷新的,原因是路由机制和iis的认知不一致,在centos中配置nginx就ok了,但是在iis中怎么整? 解决方案:一般可以直接解决的方法也就 ...

  8. Windows Azure Cloud Service (23) 使用Full IIS模式部署多站点和虚拟目录

    <Windows Azure Platform 系列文章目录> 本章我们将介绍如何使用Windows Azure的Full IIS模式部署多站点和虚拟目录. 首先我们先新建一个Window ...

  9. 集群服务器分布式iis_Nginx+IIS分布式部署和负载均衡

    标签: 1.IIS中部署2个网站 创建2个网站,端口分别为9001.9002 2.下载Nginx 可以进入Nginx官网进行下载,官网地址: http://nginx.org/,需要下载windows ...

最新文章

  1. 【LibreOJ】#6299. 「CodePlus 2018 3 月赛」白金元首与克劳德斯
  2. Python PIL.Image和OpenCV图像格式相互转换
  3. ITK:处理3D图像的2D切片
  4. (教学思路 C#集合二)哈希表
  5. 『遥かに仰ぎ、丽しの』游戏初回版特典原声集 GAME SP OST(下载、中日双语歌词)...
  6. jdbc关于操作Oracle时间数据解析
  7. PAT 甲级 1004
  8. mysql主从搭建教程
  9. 在线标准程序员计算器
  10. Excel在统计分析中的应用—第二章—描述性统计-Part5-峰度(峰值和矩峰度系数)
  11. 香港流行乐黄金二十年——经典歌手(音乐人)全面回顾 三
  12. python如何抓取图片数据_python 的简单抓取图片
  13. 硬盘分区表故障和丢失的原因
  14. 网络正常连接,浏览器无法打开网页的解决方法
  15. GTD时间管理法的五个步骤 用便签备忘录辅助完成高效时间管理
  16. 在北京,有房有车的中年男女最好欺负
  17. 使用FontCreator打造属于自己的字体
  18. i7 10700和10700f 10700k这三个CPU有什么区别
  19. python的pandas重复值处理(duplicated()和drop_duplicates())
  20. Linux查看cc编译器版本,如何查看linux版本(转)

热门文章

  1. 吴思里:字节前端面试经历
  2. Oracle Clob类型和Blob类型之间的转换
  3. STM32基础(11)光敏传感
  4. 三创赛优秀作品_全国-电子商务-三创赛省赛优秀作品.doc
  5. Win10 Plants VS Zombies 运行时出现 Fatal Error
  6. TextView长按复制实现方法小结
  7. 即食花胶的功效与作用 即食花胶怎么吃?
  8. Android之多个View同时动画
  9. Python中的三目运算符(三元表达式)
  10. 全球“最能打”的8位功夫明星:中国有3人,没成龙也没甄子丹