Apache 上で動作する GeoServer への IIS 7 URL 書き換え

Apache 上で動作する GeoServer への IIS 7 URL 書き換え

私は、GeoServer を使用してマッピング データを提供する OpenLayers ベースのマッピング アプリケーションを構築しています。問題は、WMS 経由で要求しているマップ イメージの他に、jQuery AJAX を使用して GeoServer から情報を取得していることです。GeoServer は別のポートで実行されているため、JavaScript のクロスサイト スクリプティング セキュリティ ポリシーにより、要求がブロックされています。

Javaアプリケーションとして、GeoServerはApacheのポート8080で実行され、IISインスタンスはポート80で実行されています。プロキシを構築する代わりに、IIS7でURL書き換えを使用するこの問題を解決するために、私はこのガイドしかし、まだ機能していません。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、同じリクエストをポート 8080 で実行すると適切な結果が返されるのに、返されるのは 404 だけです。

何が間違っているのでしょうか? 前もって感謝します。

答え1

条件については、{HTTP_URL} ではなく {URL} を試し、アクションについては、書き換えではなくリダイレ​​クトであることを確認してください。

答え2

同じルールが 8080 のリクエストをピックアップし、それを無限に書き換えようとしていますか? ただし、そうであれば、404 ではなく、タイムアウトまたはクエリ文字列の長さのエラーが予想される結果になると思います。

失敗した要求トレースを使用していますか? Fiddler を使用していますか? http.sys をトレースしていますか?

関連情報