GeoServer常见问题总结

转自:http://blog.csdn.net/mygisforum/article/details/8249093

Geoserver安装环境

Geoserver在部署发布服务时,经常会遇到如下问题,现总结如下:

1.忘记了GeoServer Web Admin Page的登陆用户名和密码怎么办?

存储位置:C:\Program Files\GeoServer 2.2.2\data_dir\security\users.properties.old
文件内容:admin=geoserver,ROLE_ADMINISTRATOR,其中admin是用户名,geoserver为密码。

2.GeoServer的8080端口被占用了怎么办?如何修改GeoServer的端口?

GeoServer管理页面的登陆地址正常情况下为:http://localhost:8080/geoserver/web
如8080端口被占用,访问GeoServer Web Admin Page时会显示:Bad Request (Invalid Hostname)
解决方法:
找到start geoserver的启动文件(MS-DOC批处理文件):C:\Program Files\GeoServer 2.2.2\bin\startup.bat
用记事本打开,找到-DSTOP.KEY=geoserver -Djetty.port=8080,把8080改为其他端口,重新启动GeoServer,访问http://localhost:其他端口/geoserver/web就正常了。

3.如何修改GeoServer的默认数据路径?

GeoServer的数据路径是由系统环境变量GEOSERVER_DATA_DIR决定的,默认为C:\Program Files\GeoServer 2.2.2\data_dir。

如要改变数据路径,首先重命名C:\Program Files\GeoServer 2.2.2\data_dir的文件夹,让geoserver找不到它,然后把系统变量GEOSERVER_DATA_DIR的值设置为其他路径即可。

4.使用shp文件发布地图服务时,中文出现乱码、方块、问号等无法正常显示的情况怎么办?

Shp 文件字段内容为中文时,应将 DBF charset 设置为GBK 或 GB2312。
注意其所在 WORKSPACE 的 Character Set 需要设置为UTF-8,如果同样设置为 GBK  或 GB2312 则无法正常显示,原因不明。

5.GeoServer中styles的中文显示乱码如何解决?

Style 文件xml encoding 属性和标注字体名称,必须为支持中文的编码。
如果xml encoding 设置了 GBK 或 GB2312,SLD中的font-family 必须为中文字体(宋体或其他),若为ARIAL等字体则显示为乱码、方块或问号等。示例如下

 

[html] view plain copy

  1. <?xml version="1.0" encoding="GBK"?>  
  2. <sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld"   
  3.     xmlns:sld="http://www.opengis.net/sld"   
  4.     xmlns:ogc="http://www.opengis.net/ogc"   
  5.     xmlns:gml="http://www.opengis.net/gml" version="1.0.0">  
  6. <!--......-->  
  7. <sld:Font>  
  8.     <sld:CssParameter name="font-family">宋体</sld:CssParameter>  
  9.     <sld:CssParameter name="font-size">12.0</sld:CssParameter>  
  10.     <sld:CssParameter name="font-style">normal</sld:CssParameter>  
  11.     <sld:CssParameter name="font-weight">normal</sld:CssParameter>  
  12. </sld:Font>  
  13. <!--......-->  
  14. </sld:StyledLayerDescriptor>  

6.如何使用uDig加载GeoServer的WMS和WFS服务?

在uDig菜单中选择Layer >> Add... 选择服务类型,然后输入服务地址 http://localhost:8080/geoserver/wms 或 http://localhost:8080/geoserver/wfs 下一步即可。

下图为加载WFS服务的效果:

7.在uDig中配图,如何让图层只显示在一定的比例尺范围内?

与地图学上的比例尺大小正好相反,uDig中比例尺的大小是按照比例尺分母的大小来定的,即最大显示比例尺要设置为分母大。

[html] view plain copy

  1. <sld:MinScaleDenominator>1.0E6</sld:MinScaleDenominator>  
  2. <sld:MaxScaleDenominator>2.0E7</sld:MaxScaleDenominator>  
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Geoserver是一个开源的地理信息系统服务器,它能够将空间数据(如地图、矢量数据等)按照标准的协议(如WMS、WFS等)发布到互联网上,以便于其他应用程序进行访问和使用。但是,在开发过程中,我们可能会遇到geoserver跨域问题,这会影响到应用程序的正常运行。 所谓跨域,指的是在浏览器中,访问一个与当前页面不同域名的资源。例如,在本地部署了一个geoserver服务,在前端页面中使用ajax请求geoserver的数据时,就会出现跨域问题。为了解决这个问题,需要在geoserver的配置文件中进行相关设置。 我们可以通过修改geoserver的web.xml配置文件来解决跨域问题,具体方法如下: 1.找到geoserver的安装目录下webapps/geoserver/WEB-INF目录下的web.xml文件。 2.在文件末尾加入以下内容: <filter> <filter-name>CorsFilter</filter-name> <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class> <init-param> <param-name>allowedOrigins</param-name> <param-value>*</param-value> </init-param> <init-param> <param-name>allowedMethods</param-name> <param-value>GET, POST, HEAD, OPTIONS</param-value> </init-param> <init-param> <param-name>allowedHeaders</param-name> <param-value>origin, content-type, accept</param-value> </init-param> </filter> <filter-mapping> <filter-name>CorsFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> 3.保存文件,并重启geoserver。 上述设置会开启一个CorsFilter过滤器,该过滤器能够将来自所有域名的请求都允许通过,从而解决geoserver跨域问题。 总之,geoserver跨域问题虽然会影响到应用程序的正常运行,但是通过修改geoserver的web.xml配置文件,我们可以轻松解决这个问题,确保应用程序的顺利运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值