在windows环境下配置GeoServer

由于wfs协议涉及到跨域的问题,在配置过程中,我们也将把跨域的环境配置好。虽然跨域的解决方式有很多,但此处选择一个稍微简单的方式,详见下面的具体步骤。

安装Java环境

我们使用tomcat作为服务器,所以需要java环境,如果你不确定是否安装有java环境,则可以在命令终端执行: java -version,比如我的环境: java-version

如果提示java命令找不到的错误,说明你得优先安装java环境,请到官网下载最新的Java进行安装。

下载Tomcat

安装好java环境后,我们就到Tomcat官网下载Tomcat,如果java环境是64位的,记得下载64位的Tomcat,如果是32位的java环境,就需要下载32位的tomcat。如上图所示,我的是64位java环境,我选择下载8.5.4版本,64位的windows环境的tomcat: apache-tomcat-8.5.4-windows-x64.zip

下载后,解压到一个指定的目录, 我放在了F:\apache-tomcat-8.5.4。记住,解压就可以了,免安装,此时需要验证一下是否能正常启动Tomcat,启动命令终端,执行tomcat目录下的bin\startup.bat,如下: tomcat-startup-fail

从上图可以发现,我们还没有配置环境变量JAVA_HOME或者JRE_HOME。那么我先配置一个JAVA_HOME的环境变量,配置好后,记得注销或者重启电脑,让环境变量生效。 然后重新执行命令,正确启动如下: tomcat-startup-ok

成功启动会弹出一个新的tomcat命令行窗口,参见上图左边的命令行窗口。

安装GeoServer

此时,我们需要到GeoServer官网去下载geoserver,我选择了最新的2.9.1版本,由于我使用tomcat作为服务器,所以我选择下载Web Archive格式的geoserver-2.9.1-war.zip

下载后解压到得到war文件:geoserver.war,把该文件放置到tomcat目录下的webapps目录下,比如放置该文件后,我的路径为:F:\apache-tomcat-8.5.4\webapps\geoserver.war

然后在命令行终端启动tomcat,可能需要稍微等待一下,因为要部署geoserver,待tomcat命令行终端启动完成,就可以打开浏览器输入http://localhost:8080/geoserver打开geoserver的管理页面,如下: geoserver-index

见到这个页面,也就安装成功了。如果没有出现该页面,请按照前面的步骤检查一下什么地方出问题了。

跨域配置

由于tomcat从7.0.41版本开始就支持跨域了,参见CORS on Tomcat,我们下载的tomcat是8.5.4,自然就能很好的支持了,只需要进行下面的简单配置:

  • 找到geoserver的web.xml文件,我的电脑对应的路径为F:\apache-tomcat-8.5.4\webapps\geoserver\WEB-INF\web.xml
  • 打开该文件,把下面的配置添加在该文件中:
      <filter>
        <filter-name>CorsFilter</filter-name>
        <filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
      </filter>
      <filter-mapping>
        <filter-name>CorsFilter</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
    

web-cross-config

然后再重新启动tomcat即可。