启动 apache

  1. 安装 apache 到指定目录。
  2. apache 安装成功后,默认处于启动状态。您可以通过电脑右下角图标 来更改 apache 的“启动”、“停止”和“重启”状态。
  3. 验证 apache 正常启动,有以下两种方式:
  • 打开任务管理器,查看 apache 进程是否已启动。
  • 访问 http://127.0.0.1 或 http://localhost 时,页面出现“It works!”字样,则代表 apache 已成功启动。

配置 apache

基本配置

打开【apache 安装路径】\conf\httpd.conf 文件,进行如下修改以实现反向代理配置:

  1. 打开以下两行代码,即去掉注释符“#”:

 LoadModule proxy_module modules/mod_proxy.so

 LoadModule proxy_http_module modules/mod_proxy_http.so

  1. 在文件最后添加如下内容:

ProxyPass /iserver http://192.168.17.16:8090/iserver

ProxyPassReverse /iserver http://192.168.17.16:8090/iserver

  • ProxyPass:用于设置需要转发的 GIS 服务地址,可以是 IP 地址形式,也可以是域名形式。
  • ProxyPassReverse:ProxyPassReverse 和 ProxyPass 需成对出现。

配置转发的请求头

在上述基本配置的基础上,还需要设置转发请求的请求头中的服务地址。因为不设置请求头中的服务地址,则访问反向代理后的服务时,服务中的页面链接还是指向原始的 GIS 服务器而不是当前地址。具体设置方法有以下三种:

  1. 方法一:直接设置 ProxyPreserveHost。即在【apache 安装路径】\conf\httpd.conf 文件中,将 ProxyPreserveHost 设置为 on。
  2. 方法二:使用 mod_headers 插件设置 ProxyHost。该方法需要两步实现:
  • 首先,在 httpd.conf 文件中,打开 mod_headers 插件,即去掉注释符“#”如下:

LoadModule headers_module modules/mod_headers.so

  • 然后,在该配置文件中,设置 ProxyHost 如下:

RequestHeader set ProxyHost "supermap.iserver.org:8000"

  1. 方法三:修改 iServer 的系统配置文件。即在【SuperMap iServer 安装目录】\webapps\iserver\WEB-INF\iserver-system.xml 文件中,<properties> 节点下添加如下一行:

 <proxyHost>supermap.iserver.org:8000</proxyHost>

访问服务

在通过 http://supermap.iserver.org:8000/iserver 访问代理后的服务前,需为 supermap.iserver.org 域名指定 IP,既可以通过 DNS 设置,也可以在 C:\Windows\System32\drivers\etc\hosts 中直接设置,即在 hosts 文件中添加 192.168.17.13(为 apache 服务器对应的 IP)  supermap.iserver.org 。配置好之后访问反向代理后的服务地址 http://supermap.iserver.org:8000/iserver,即可获得与访问原服务器相同的内容。