启动 apache
- 安装 apache 到指定目录。
- apache 安装成功后,默认处于启动状态。您可以通过电脑右下角图标 来更改 apache 的“启动”、“停止”和“重启”状态。
- 验证 apache 正常启动,有以下两种方式:
- 打开任务管理器,查看 apache 进程是否已启动。
- 访问 http://127.0.0.1 或 http://localhost 时,页面出现“It works!”字样,则代表 apache 已成功启动。
配置 apache
基本配置
打开【apache 安装路径】\conf\httpd.conf 文件,进行如下修改以实现反向代理配置:
- 打开以下两行代码,即去掉注释符“#”:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
- 在文件最后添加如下内容:
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 服务器而不是当前地址。具体设置方法有以下三种:
- 方法一:直接设置 ProxyPreserveHost。即在【apache 安装路径】\conf\httpd.conf 文件中,将 ProxyPreserveHost 设置为 on。
- 方法二:使用 mod_headers 插件设置 ProxyHost。该方法需要两步实现:
- 首先,在 httpd.conf 文件中,打开 mod_headers 插件,即去掉注释符“#”如下:
LoadModule headers_module modules/mod_headers.so
- 然后,在该配置文件中,设置 ProxyHost 如下:
RequestHeader set ProxyHost "supermap.iserver.org:8000"
- 方法三:修改 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,即可获得与访问原服务器相同的内容。