首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IIS7URL重写到运行在Apache上的GeoServer

IIS7URL重写到运行在Apache上的GeoServer
EN

Server Fault用户
提问于 2010-12-25 00:02:41
回答 2查看 2.2K关注 0票数 1

我正在构建一个基于OpenLayers的映射应用程序,该应用程序使用GeoServer来提供映射数据。我遇到的问题是,除了我通过WMS请求的地图图像之外,我还使用jQuery AJAX从GeoServer获取信息。当GeoServer在另一个端口上运行时,由于JavaScript中的跨站点脚本安全策略,我的请求被阻塞了。

作为一个Java应用程序,GeoServer在端口8080上运行在Apache上,而我的IIS实例运行在端口80上。我决定使用IIS7中的URL重写来解决这个问题,而不是构建代理。我正在跟踪本指南本指南,但它仍然不起作用。以下是我的URL重写规则设置:

  • 匹配网址:(.*)
  • 条件:{HTTP_URL}匹配/geoserver
  • 操作:重写到http://localhost:8080/{R:1},追加查询字符串

然而,当我请求http://localhost/geoserver/wms?QUERY_LAYERS=SanDiego:FWSA_sandiego&LAYERS=SanDiego:FWSA_sandiego&SERVICE=WMS&VERSION=1.1.1&FEATURE_COUNT=20&REQUEST=GetFeatureInfo&EXCEPTIONS=application/vnd.ogc.se_xml&BBOX=-13009123.590156,3862057.2905992,-13006066.109025,3865114.7717302&INFO_FORMAT=text/html&x=20&y=20&width=40&height=40&srs=EPSG:900913时,我得到的只是一个404,尽管端口8080上的相同请求返回了正确的结果。

我做错了什么?提前谢谢。

EN

回答 2

Server Fault用户

回答已采纳

发布于 2010-12-25 05:15:53

对于该条件,请尝试{URL}而不是{HTTP_URL},对于该操作,请确保它是重定向而不是重写。

票数 2
EN

Server Fault用户

发布于 2010-12-25 12:27:29

同样的规则是拿起8080的请求,并试图无限地重写它吗?虽然我认为超时或查询字符串长度错误是预期的结果,如果是的话,而不是404。

是否使用失败的请求跟踪?利用Fiddler?追踪http.sys?

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/216004

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档