^ 关注我,带你一起学GIS ^
前言
GeoServer 是一个基于Java的GIS服务器,它使用户能够查看和编辑地理空间数据。GeoServer遵循开放地理空间联盟(OGC)制定的开放标准,在地图创建和数据共享方面提供了极大的灵活性。
文中以GeoServer2.28.2为例进行讲解。
如果你还没有看过,建议从以上内容开始。
1. 软件环境
本文使用如下软件环境,以供参考,因为GeoSever的运行依赖于JDK,所以还需在服务器安装JDK并配置环境变量。
时间:2026年
系统:Windows 11
openjdk: 17.0.14
GeoServer:2.28.2
在cmd窗口输入java -version命令,检查是否输出JDK版本信息。
如果没有,请先安装JDK。
2. GeoServer 代理静态文件
什么,GeoServer可以代理静态文件?嘿嘿,没想到吧,我也是才发现的。今天就赶忙来测试一下,看看效果怎么样。
印象中,可以使用IIS、Nginx之类的Web服务器代理文件和部署应用,但现在你可以在GeoServer中部署HTML、图像以及JavaScript。想想就挺美妙,这是不是意味着我可以把GeoServer当做Web服务器来使用呢。
首先打开GeoServer数据目录geoserver-2.28.2-bindata_dirwww。
我们看到www文件夹下有几个示例文件,现在访问一下wfs-t.html文件看看效果。
浏览器访问地址为:http://host:8080/geoserver/www。
当然,你在浏览器直接输入上述地址是无法访问的,此时的地址栏会变成http://host:8080/geoserver/www/index.html,而在www路径下没有index.html页面,所以直接404,找不到页面。
解决方式很简单,你只需要将index.html替换为wfs-t.html访问文件名称及后缀即可。http://host:8080/geoserver/www/wfs-t.html
浏览器显示如下。
现在我们向www文件夹拷入一个图片文件GeoServer 数据组织结构.png
在浏览器输入以下地址访问。http://host:8080/geoserver/www/GeoServer 数据组织结构.png
图片结果显示如下。
再向www文件夹拷入一个js文件srs.js在浏览器输入以下地址访问。
http://host:8080/geoserver/www/srs.js
js文件结果显示如下。
3. GeoServer 代理局限
使用GeoServer代理静态文件具有一定的局限性。
这种方法没有利用加速器,如Tomcat APR库。如果需要高速提供大量静态文件,可能希望创建自己的Web应用程序,与GeoServer一起部署,或者使用单独的Web服务器来提供内容。
4. GeoServer 代理状态配置
可以将GEOSERVER_DISABLE_STATIC_WEB_FILES属性设置为true,从而在Content-Type HTTP响应头中将text/html和application/javascript内容类型转换为text/plain,这将阻止通过www目录提供网页。
如果www目录根本未被使用,或者仅用于提供除网页以外的文件(如PDF或Word文档),这将有助于防止存储的跨站点脚本漏洞。
默认行为是不转换这些内容类型。此属性可以通过Java系统属性、命令行参数(-D)、环境变量或web.xml初始化参数进行设置。
打开geoserver-2.28.2-binwebappsgeoserverWEB-INF目录,编辑web.xml文件。复制一个
<context-param>标签,修改参数名为GEOSERVER_DISABLE_STATIC_WEB_FILES,参数值为true。
<context-param>
<param-name>GEOSERVER_DISABLE_STATIC_WEB_FILES</param-name>
<param-value>true</param-value>
</context-param>
修改完成后保存文件,重启GeoServer服务。
再次访问wfs-t.html页面,发现变成了字符信息,说明配置信息生效了,如果想取消禁用,则将该值修改为flase。
❝
注意:一般情况下,建议禁用此属性,也就是将该值设置为true。
5. GeoServer 账户信息
GeoServer默认账号信息
服务访问地址:http://localhost:8080/geoserver
静态文件地址:http://localhost:8080/geoserver/www
端口:8080
账户: admin
密码:geoserver
参考资料
GeoServer:https://docs.geoserver.org/latest/en/user/tutorials/staticfiles.html
❝
GIS之路 开发示例数据下载,请在公众号后台回复:vector
全国信息化工程师-GIS 应用水平考试资料,请在公众号后台回复:GIS考试
GIS之路 公众号已经接入了智能助手**,** 可以在对话框进行提问,也可以直接搜索历史文章进行查看。
都看到这了,不要忘记点赞、收藏 + 关注 哦 !
本号不定时更新有关 GIS开发 相关内容,欢迎关注 !
- GeoTools 开发合集(全)
- OpenLayers 开发合集(全)
- GDAL 开发合集(全)
- ArcPy 开发合集(全)
- ArcPy,一个基于 Python 的 GIS 开发库简介
- GeoTools,一个基于 Java 的 GIS 开发库简介
- Turf,一个基于 JS 的 GIS 开发库简介
- GDAL,一个基于 Python 的 GIS 开发库简介
- GeoJSON 数据源简介
- GIS 影像数据源简介
- GIS 名词解释大全
- GIS 服务器,GeoServer 简介
- 从微信指数看当前 GIS 框架的发展趋势
- Landsat 卫星数据简介
- OGC,开放地理空间联盟简介
- 中国地图 GeoJSON 数据集网站简介
- 高校停招 GIS 专业,背后隐藏着怎样的逻辑?
- 实用小工具推荐合集
- ArcGIS Pro 添加底图的方式
- GIS 坐标转换:Shp 数据重投影