GeoServer 常見問題總結

mygisforum發表於2012-12-02

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等字型則顯示為亂碼、方塊或問號等。示例如下

<?xml version="1.0" encoding="GBK"?>
<sld:StyledLayerDescriptor xmlns="http://www.opengis.net/sld" 
	xmlns:sld="http://www.opengis.net/sld" 
	xmlns:ogc="http://www.opengis.net/ogc" 
	xmlns:gml="http://www.opengis.net/gml" version="1.0.0">
<!--......-->
<sld:Font>
    <sld:CssParameter name="font-family">宋體</sld:CssParameter>
    <sld:CssParameter name="font-size">12.0</sld:CssParameter>
    <sld:CssParameter name="font-style">normal</sld:CssParameter>
    <sld:CssParameter name="font-weight">normal</sld:CssParameter>
</sld:Font>
<!--......-->
</sld:StyledLayerDescriptor>

6.如何使用uDig載入GeoServer的WMS和WFS服務?

在uDig選單中選擇Layer >> Add... 選擇服務型別,然後輸入服務地址 http://localhost:8080/geoserver/wms 或 http://localhost:8080/geoserver/wfs 下一步即可。
下圖為載入WFS服務的效果:

7.在uDig中配圖,如何讓圖層只顯示在一定的比例尺範圍內?

與地圖學上的比例尺大小正好相反,uDig中比例尺的大小是按照比例尺分母的大小來定的,即最大顯示比例尺要設定為分母大。
<sld:MinScaleDenominator>1.0E6</sld:MinScaleDenominator>
<sld:MaxScaleDenominator>2.0E7</sld:MaxScaleDenominator>
待續。。。

相關文章