6. 개발 서버

QGIS 서버 제품을 설치하고 전개하는 과정 가운데 클라이언트가 보내는 HTTP 요청을 QGIS 서버 FastCGI 바이너리 응용 프로그램으로 전송할 수 있는 웹 서버 요소(예: 아파치 또는 엔진X)를 설정하는 단계가 있습니다.

사용자의 로컬 컴퓨터에 전체 웹 서버 스택을 설치하고 환경 설정하는 과정을 건너뛰고 QGIS 서버를 빨리 테스트하고 싶다면, 독립형(standalone) QGIS 개발 서버를 사용하면 됩니다.

QGIS 개발 서버는 사용자의 프로젝트 파일을 서비스할 준비가 된 매우 단순한 웹서를 제공하는 독립 응용 프로그램입니다.

경고

독립형 개발 서버는 제품 수준에서 사용할 목적으로 개발된 것이 아니기 때문에, 공공에 노출된 서버라면 보통 겪을 수도 있는 보안 취약점이나 기타 스트레스 조건 등을 위해 점검되지 않았습니다.

서버를 실행하려면:

$ qgis_mapserver

개발 서버가 받아들이는 기본 포트는 8000 입니다. 다음은 출력 예시입니다:

QGIS Development Server listening on http://localhost:8000
CTRL+C to exit
127.0.0.1 [lun gen 20 15:16:41 2020] 5140 103ms "GET /wfs3/?MAP=/tests/testdata/qgis_server/test_project.qgs HTTP/1.1" 200
127.0.0.1 [lun gen 20 15:16:41 2020] 3298 2ms "GET /wfs3/static/jsonFormatter.min.js HTTP/1.1" 200
127.0.0.1 [lun gen 20 15:16:41 2020] 1678 3ms "GET /wfs3/static/jsonFormatter.min.css HTTP/1.1" 200
127.0.0.1 [lun gen 20 15:16:41 2020] 1310 5ms "GET /wfs3/static/style.css HTTP/1.1" 200
127.0.0.1 [lun gen 20 15:16:43 2020] 4285 13ms "GET /wfs3/collections?MAP=/tests/testdata/qgis_server/test_project.qgs HTTP/1.1" 200

개발 서버는 명령 줄 인자로 전송할 수 있는 옵션을 몇 개 가지고 있습니다. 서버를 -h 로 호출하면 모든 옵션을 볼 수 있습니다.

Usage: qgis_mapserver [options] [address:port]
QGIS Development Server

Options:
-h, --help        Displays this help.
-v, --version     Displays version information.
-l <logLevel>     Sets log level (default: 0)
                    0: INFO
                    1: WARNING
                    2: CRITICAL
-p <projectPath>  Path to a QGIS project file (*.qgs or *.qgz),
                    if specified it will override the query string MAP argument
                    and the QGIS_PROJECT_FILE environment variable

Arguments:
addressAndPort    Listen to address and port (default: "localhost:8000")
                    address and port can also be specified with the environment
                    variables QGIS_SERVER_ADDRESS and QGIS_SERVER_PORT