I. 목표
GIS와 관련하여 지도에 대량의 거점, 즐겨찾기등의 POI를 커스텀으로 만들어 올리기 위해서는 GeoServer가 필수적이다. 따라서 지오서버를 설치하여 구성하는 방법을 연구한다.
II. 연구및 개발내용
1. 관련 어플리케이션 설치
1) JDK 설치 : JDK 1.8 기준으로 설치
2) GeoServer 설치
http://geoserver.org/release/stable/ 에서 다운로드
현 프로젝트에서는 Packages 중 Platform Independent Binary를 선택하여 설치한다.
다운로드 받은 geoserver-2.20.1-bin.zip 를 D:\Service\GeoServer 밑에 압축을 해제한다.
3) QGIS 설치
https://qgis.org/ko/site/forusers/download.html 에서 다운로드하여 설치
2. GeoServer 설정
1) 환경설정
가. 구동 포트
GeoServer는 기본적으로 8080포트로 구동되는데, 다른 포트로 기동하려면 start.ini 파일에서 jetty.http.port 를 찾아 수정하면 된다. 여기에서는 9090포트를 사용하기로 한다.
## Connector port to listen on
#jetty.http.port=8080 jetty.http.port=9090 |
나. 다국어 지원
레이어의 스타일에 한글이 적용되기 위해서는 geoserver-2.20.1-bin\bin\startup.bat 파일을 열어 -Dfile.encoding=UTF-8 를 추가하여 기동할 수 있게 해주어야 한다.
%RUN_JAVA%” %JAVA_OPTS% -DGEOSERVER_DATA_DIR=”%GEOSERVER_DATA_DIR%”
-Djava.awt.headless=true -DSTOP.PORT=8079 -DSTOP.KEY=geoserver -Dfile.encoding=UTF-8 -jar start.jar |
다. CORS 허용
Ajax로 GeoServer에게 데이터 요청시 서로 다른 도메인인 경우에 CORS를 허용해야 한다.
geoserver-2.20.1-bin\webapps\geoserver\WEB-INF에 있는 web.xml에서 cross domain 관련 두곳의 주석을 해제해야 한다.
<filter>
<filter-name>cross-origin</filter-name> <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class> <init-param> <param-name>chainPreflight</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>allowedOrigins</param-name> <param-value>*</param-value> </init-param> <init-param> <param-name>allowedMethods</param-name> <param-value>GET,POST,PUT,DELETE,HEAD,OPTIONS</param-value> </init-param> <init-param> <param-name>allowedHeaders</param-name> <param-value>*</param-value> </init-param> </filter> |
<!– Uncomment following filter to enable CORS –>
<filter-mapping> <filter-name>cross-origin</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> |
2) GeoServer 구동 및 접속
가. 구동
cmd에서 압축을 해제한 디렉토리(GeoServer\geoserver-2.20.1-bin\bin) 로 이동하여 startup.bat 를 실행
나. 접속 방법
start.ini 에서 9090포트로 GeoServer를 구동하였으므로 다음과 같은 URL로 접속한다.
http://localhost:9090/geoserver
기본 사용자 ID와 패스워드는 admin/geoserver 이다.
III. 결론
성공적으로 geoserver를 설치하여 구동하여 보았고, 접속이 잘 되는것으로 확인되었다.