QGIS入门指南:从qgis online开始学习
QGIS 与 qgis online 常常在项目开工的第一天就被提及:我如何尽快把一张地图从桌面端发布到浏览器,让同事和甲方随时查看与标注?作为长期在规划院与科技企业穿梭的 GIS 工程师,我更倾向“从在线开始”的学习路径,因为它能把“成果立刻可见”的正反馈带给新手,也能逼迫我们在真实约束(网络、权限、性能、标准)下建立正确的知识图谱。

我们在谈论的“qgis online”到底是什么
QGIS 与 qgis online 在语义上存在一个容易混淆的点:QGIS是开源的桌面 GIS 软件,而qgis online并非官方产品名,行业里通常用它泛指“围绕 QGIS 的在线托管与协作生态”,包括:
- QGIS Cloud:第三方托管服务,提供 QGIS 项目一键上云、自动生成 WMS/WFS/WMTS 链接与浏览器查看页。
- QGIS Server:QGIS 的服务器组件,发布 OGC 标准服务(WMS/WFS/WCS/OGC API-Features 等),常与 Lizmap Web Client 搭配构建可配置的 Web 地图门户。
- Mergin Maps 与 QField:围绕 QGIS 的云端协作与移动外业生态,实现离线采集、双向同步与版本管理。
- qgis2web:QGIS 插件,把样式与图层导出为 Leaflet/MapLibre 的静态网页,轻量快速。
重要说明:qgis online 在本文中作为“QGIS 相关在线发布与协作方案”的统称。与 Esri 的 ArcGIS Online 为同类场景的不同产品与生态,请读者注意区分。
为什么建议从“在线体验”切入 QGIS 学习
QGIS 与 qgis online 的组合,能在最短路径上回答三个关键问题:是什么、为什么、怎么做。
- 是什么:把 QGIS 桌面端样式、数据与分析结果,经由 WMS/WFS 或静态页面,转换成可分享的 Web 地图。
- 为什么:在线可见意味着团队同步、需求澄清与迭代速度大幅提升;同时你会被动掌握 OGC 标准、坐标系、性能与权限等“上线必修课”。
- 怎么做:选择托管(QGIS Cloud/Mergin/Lizmap Cloud)或自建(QGIS Server+Lizmap),在 QGIS 里配置好项目元数据与样式,发布并分享链接。
准备与环境搭建(零门槛与标准化两条路径)
QGIS 与 qgis online 的入门有两条主路线:零门槛的托管体验,和标准化的本地+在线结合。
路径 A:零门槛(仅浏览器/轻桌面)
- 注册 QGIS Cloud 与/或 Mergin Maps 账号。
- 安装 QGIS LTR(长期支持版),避免版本频繁变化带来的兼容问题。
- 在 QGIS 中加载示例数据(如 Natural Earth/OSM),完成样式配置。
- 使用 QGIS Cloud 插件一键发布;或用 qgis2web 导出静态网页并部署到任意静态主机(如 GitHub Pages)。
路径 B:标准化(自建可控)
- 使用 Docker 启动 QGIS Server,保证环境一致性。
- 部署 Lizmap Web Client,通过 QGIS 插件生成 Web 地图配置。
- 连接 PostGIS 存储矢量数据,Tile 服务存储栅格瓦片,分层优化。
- 通过 OGC 标准服务和反向代理(Nginx/Apache)提供稳定的 HTTPS 访问。
快速上手:用 QGIS Cloud 发布第一张在线地图
QGIS 与 qgis online 的最短闭环,是用 QGIS Cloud 实现“桌面到浏览器”的首发。
- 在 QGIS 中安装“QGIS Cloud”插件并登录账号。
- 准备数据:优先使用 GeoPackage 或 PostGIS,字段命名英文化,字符集 UTF-8。
- 设置项目:项目属性 → 常规 → 填写 投影(CRS)、元数据与可用范围;布局排版生成预览图(可选)。
- 样式与符号:尽量使用简单渲染或分级渲染,避免过多表达式带来渲染负担。
- 插件发布:选择需要的图层,勾选公开/私有与交互项(弹窗模板),点击发布。
- 获取链接:复制自动生成的 WMS/WFS/WMTS 服务地址与分享页面 URL,发给团队测试。
| 特性 | QGIS Cloud(入门) | QGIS Server + Lizmap(自建) | qgis2web(静态) |
|---|---|---|---|
| 部署难度 | 极低 | 中-高 | 低 |
| OGC 标准 | WMS/WFS/WMTS | WMS/WFS/WCS/OGC API-Features | 无(前端切片或矢量直读) |
| 权限与定制 | 有限 | 强 | 靠前端与静态托管 |
自建可控方案:QGIS Server + Lizmap(可配置 Web 门户)
QGIS 与 qgis online 的工程化落地,常见路线是用 Docker 快速拉起 QGIS Server,再用 Lizmap 把 QGIS 项目“翻译”为 Web 可配置应用。
Docker 快速启动 QGIS Server
# 使用官方镜像启动 QGIS Server(示例)
# 将本地 /path/to/project 挂载到容器的 /project
docker run -d --name qgis-server
-p 8080:80
-e QGIS_SERVER_LANDING_PAGE=true
-v /path/to/project:/project
qgis/qgis-server:latest
# 访问服务能力(WMS GetCapabilities)
# http://localhost:8080/ows/?SERVICE=WMS&REQUEST=GetCapabilities
QGIS 项目配置要点
- 项目属性 → OWS 服务:填写 标题/摘要/关键词,勾选要发布的图层并命名。
- 图层字段别名、表单与弹窗模板预先定义,减少前端配置工作量。
- 尽量用 GeoPackage/PostGIS,避免碎片化 Shapefile,统一编码与字段类型。
- 设置有效范围与默认坐标系(Web 场景常用 EPSG:3857 或 EPSG:4326)。
接入 Lizmap Web Client
- 在 QGIS 安装 Lizmap 插件,按项目生成 Lizmap 配置(图层可见性、过滤、弹窗、测量、打印等)。
- 部署 Lizmap Web Client(或使用托管方案),上传 QGIS 项目与配置文件。
- 通过反向代理提供 HTTPS 域名,配置缓存(如地图瓦片、WMS 请求缓存)以提升性能。
面向浏览器的轻量发布:qgis2web
QGIS 与 qgis online 的轻量路线,常用 qgis2web 将 QGIS 样式导出为 Leaflet/MapLibre 静态网页,无需服务器即可上 CDN。
- 在 QGIS 中调整样式,控制图层数量与字段,确保几何与属性干净。
- 使用 qgis2web 插件选择框架(Leaflet/MapLibre)、交互(弹窗、量测)、底图与缩放级别。
- 导出目录(HTML/CSS/JS/数据),上传到任意静态托管(如 GitHub Pages、Netlify)。
在线协作与移动采集:Mergin Maps / QField
QGIS 与 qgis online 的协作维度,推荐 Mergin Maps 或 QField 构建“桌面-云-移动”的闭环,尤其适合外业采集与同步。
- 在 QGIS 设计数据结构(字段、约束、域值),并配置表单与离线地图包(MBTiles)。
- 连接 Mergin 项目仓库,一键同步到云端。
- 在手机端(Mergin Maps App 或 QField)登录并同步项目,离线采集后回到网络区自动双向合并。
- 在 QGIS 中查看变更历史与冲突解决,按需发布到 QGIS Cloud/Lizmap。
数据与坐标系的核心知识(是什么、为什么、怎么做)
QGIS 与 qgis online 的成功上线,80% 取决于数据规整与坐标系:这是“看不见的地基”。
- EPSG:4326(WGS 84):纬经度坐标,适合数据交换与属性查询,但 Web 实时渲染比例尺感知弱。
- EPSG:3857(Web Mercator):Web 地图事实标准,匹配主流底图(OSM/XYZ),可视化兼容最好。
- 地方坐标/投影:精度好但不通用,上线前需统一到 4326/3857,或在服务端提供坐标转换。
# 使用 PyQGIS 将图层统一到 Web 场景常用坐标系(示例)
project = QgsProject.instance()
layer = QgsVectorLayer("/data/roads.gpkg|layername=roads", "roads", "ogr")
# 目标坐标系:EPSG:3857(Web Mercator)
target_crs = QgsCoordinateReferenceSystem("EPSG:3857")
task = QgsVectorFileWriter.writeAsVectorFormatV2(
layer,
"/data/roads_3857.gpkg",
QgsCoordinateTransformContext(project.transformContext()),
QgsVectorFileWriter.SaveVectorOptions(
driverName="GPKG",
layerName="roads_3857",
fileEncoding="UTF-8",
ct=QgsCoordinateTransform(layer.crs(), target_crs, project.transformContext())
)
)
# 说明:导出为 GeoPackage,保持编码统一,避免 Shapefile 的字段长度与编码限制
端到端示例工作流:从数据到在线分享(30 分钟内)
QGIS 与 qgis online 的组合,在一个“小型市政设施巡检”的示例里可以这样落地:
- 准备:导入设施点线面(GPKG),设置字段约束(必填、唯一),定义表单(下拉选项)。
- 样式:按“设施类型”分类渲染,设置可读标注(避免表达式过重)。
- 移动:创建 Mergin 项目,上传数据与样式;手机端同步,离线采集新增点并拍照(附件路径字段)。
- 合并:回到办公室自动同步到 QGIS,检查冲突与修正。
- 发布:通过 QGIS Cloud/Lizmap 发布浏览器地图,开放“设施类型”筛选与弹窗模板。
- 分享:发送 URL 给项目群,收集反馈并滚动更新样式与字段。
常见问题与排错(经验速查)
- 坐标错乱:图层无定义 CRS 或与项目不一致,先定义(Define)再重投影(Reproject)。
- 中文乱码:统一 UTF-8,避免 Shapefile;使用 GeoPackage/PostGIS。
- 服务不可见:检查 OWS 是否勾选图层、项目范围是否过小、图层权限是否公开。
- 跨域/CORS:前端直连 WMS/WFS 需在服务器开启 CORS 或通过反向代理统一域名。
- HTTPS 混合内容:页面是 HTTPS,底图或服务却是 HTTP,需改为 HTTPS 或走反代。
- 性能:简化几何、裁剪范围、使用瓦片(栅格/矢量)、为 PostGIS 建索引,合理设置最大比例尺可见性。
- 符号不一致:部分高级渲染/表达式 Web 端不佳,尽量使用通用渲染器;qgis2web 导出前做简化。
进阶与最新动向(把握方向而非追新)
QGIS 与 qgis online 的技术演进核心围绕标准与性能:
- OGC API-Features:QGIS Server 正在完善对新一代 OGC API 的支持,相比传统 WFS 更友好于 Web/分页/JSON。
- 矢量瓦片:QGIS 桌面对矢量瓦片消费日趋完善;服务器侧常结合专用瓦片服务(如 TileServer GL、MapLibre 生态)。
- 长周期版本:生产环境优先 QGIS LTR,配合容器化与 CI/CD,保证环境可复现。
安全、版权与合规
QGIS 与 qgis online 的公开发布,应把权限、版权与合规作为上线前清单:
- 数据脱敏与最小必要披露:坐标扰动、属性脱敏、按需公开。
- 分级访问:公开底图、内部敏感专题;Lizmap/Mergin 提供细粒度权限控制。
- 版权溯源与标注:OSM、Natural Earth、政府开放数据须保留署名与许可证信息。
- 日志与审计:记录访问与变更,满足项目或法规要求。
实践中的几个小技巧
- 用表单域值和默认值:减少外业录入错误,保证数据质量。
- 在项目里写“自说明”:项目元数据、图层别名、字段描述为后续协作省下大量沟通成本。
- ASCII 架构速记:
[QGIS Desktop] --(OWS 配置)--> [QGIS Server] --(WMS/WFS/OGC API)--> [Lizmap/前端] --(qgis2web 导出)--> [静态托管/CDN] --(Mergin/QField)--> [移动外业/同步]
总结与行动建议
QGIS 与 qgis online 的学习,不要从“功能大全”开始,而要从“把一张地图上线”开始。先用 QGIS Cloud 或 qgis2web 打通首个闭环,再根据需求走向 QGIS Server+Lizmap 的可控方案,用 Mergin/QField 补齐协作与外业,过程中坚持“数据规整与坐标统一优先”的工程习惯。
行动建议:
- 今天就用 qgis2web 或 QGIS Cloud 发布一张示例地图,获得反馈。
- 本周用 Mergin 完成一次外业采集闭环,体验协作与版本控制。
- 下月搭建一套最小可用的 QGIS Server+Lizmap 环境,形成可复用模板。
作为 GIS研习社的 Dr.gis,我愿意继续讨论你的数据、坐标系与发布问题。你在项目里最大的阻碍是什么:规范、权限还是性能?欢迎把问题带到 gisyxs.com,一起拆解。
参考文献
- QGIS 官方首页与下载:https://qgis.org
- QGIS 官方文档(含 Server/用户手册):https://docs.qgis.org/latest/en/docs/
- QGIS Server 手册(OGC/部署):https://docs.qgis.org/latest/en/docs/server_manual/
- QGIS Cloud 官方网站:https://qgiscloud.com/
- Lizmap Web Client 文档:https://docs.lizmap.com/current/en/
- qgis2web 插件(GitHub):https://github.com/tomchadwin/qgis2web
- Mergin Maps 官方网站:https://merginmaps.com/
- Mergin Maps 文档:https://docs.merginmaps.com/
- QField(与 QGIS 协同的外业 App):https://qfield.org/
- OGC 标准组织(WMS/WFS/OGC API):https://www.ogc.org/
- EPSG 坐标系注册库:https://epsg.org/home.html
- PostGIS 官方网站:https://postgis.net/
- Natural Earth 开放地理数据:https://www.naturalearthdata.com/
- OpenStreetMap 开放地图数据:https://www.openstreetmap.org/
-
空间建模与应用技术就业前景解析,空间建模入门指南 2025-09-27 11:01:10
-
空间建模是什么意思?空间建模入门全解析 2025-09-27 10:36:44
-
空间建模入门指南:从空间建模基础到实用解析 2025-09-27 10:18:02
-
mac qgis黑屏问题解析,mac qgis入门及常见疑难解答 2025-09-27 10:13:16
-
QGIS入门指南:qgis是做什么的、qgis下载安装及qgis怎么设置中文 2025-09-27 09:41:22
-
gis录入入门指南:GIS录入是什么及GIS文件录入规范解析 2025-09-27 08:48:41
-
mac qgis指南:qgis mac malware等常见问题全解答 2025-09-27 08:36:27
-
空间建模与应用技术全解,空间建模入门必看 2025-09-27 08:34:46
-
空间建模软件解析,空间建模入门全攻略 2025-09-27 08:30:03
-
mac qgis入门指南:mac qgis黑屏等常见问题解析 2025-09-27 08:25:45
-
mac qgis指南(含:qgis for mac m1下载地址) 2025-09-27 07:47:30
-
gis空间建模案例详解,全面掌握gis空间建模精髓 2025-09-27 07:35:01
-
mac qgis入门指南:mac gis与qgis download for mac解析 2025-09-27 07:12:39
-
空间建模软件哪个好用?空间建模入门全解析 2025-09-27 06:45:53
-
空间建模感悟解析,空间建模入门必读指南 2025-09-27 06:11:56
-
mac qgis指南:qgis mac malware、qgis mac not opening等全解 2025-09-27 06:05:06
-
gis空间建模入门指南,从gis做空间分析讲解 2025-09-18 08:22:30
-
空间建模与应用技术专业详解,空间建模入门必读 2025-09-18 07:48:01
-
gis空间建模工具全面解析,轻松掌握gis空间建模入门 2025-09-18 04:46:43
-
gis空间建模入门指南,从gis 建模基础讲解到实操 2025-09-18 04:41:56