1、MapServer简介
MapServer是一个基于胖服务器/瘦客户端模式的实时地图发布系统。当客户端发送数据请求时,服务器实时处理空间数据,并将生成的数据发送给客户端。
MapServer遵循OGC系列规范,可以集成PostGIS和开源数据库PostgreSQL,并对地理空间数据进行存储和SQL查询。基于ka-map、MapLab、Caroweb、Chameleon等一系列客户端JAVASCRIPT API,支持地理空间数据的传输和表达,并遵循OGC规范制定的一系列WMS、WFS、WCS、WMC、SLD、GML和Filter编码。
MapServer的核心部分是用C语言编写的地图操作模块,MapServer本身的许多功能的实现都依赖于一些开源或自由库,如Shapelib、FreeType、Proj.4、GDAL/OGR、GD库、Regex。
GD
GD是一个图像库。由于MapServer使用GD进行图像渲染,因此必须安装它。GD有自己的依赖类库,包括zlib、libpng、FreeType2.x和libJPEG。这些类型使GD能够执行图像压缩(对于支持的数据)、渲染PNG图像、使用TrueType字体以及渲染JPEG图像。由于GIF上的许可证已经过期,所以现在也可以使用了。
#在MapServer7.0中已删除了对GD的支持。
FreeType
FreeType是一个字体渲染引擎。它不被MapServer直接引用,但被GD用来呈现字体。由于TrueType比Mapserver提供的位图字体更吸引人,因此值得包含这个类库。
LibPNG
LibPNG使MapServer能够渲染JPEG图像。自2001年以来,一个新的版本已经发布。一般来说,这个库应该已经安装在机器上了。如果没有,可自行安装。Libpng使用MapServer来渲染PNG图像。它不是由MapServer直接使用,而是由GD使用。Libpng需要库zlib。
Zlib
Zlib是GD使用的数据压缩库。
GDAL
GDAL是用于栅格数据的转换类库。它提供具有地理投影的栅格图像的导入和投影,将不会在本书中使用这些功能,但这个库是安装Basic MapServer所必需的。
OGR
OGR库提供了读写一些矢量格式的能力。在本书中,将使用OGR提供的一些功能。
Proj.4
Proj.4是一个用于地图投影的程序。它可以由MapServer调用,也可以单独投影到整个数据库上。
Shapelib
Shapelib是一个C程序,用于生成和处理形状文件,可使用这个类库提供的有用工具,而不必自己编写任何C代码。它具有生成Shape文件(包括DBF文件)、销毁Shape文件和DBF文件以及更改Shape文件的投影的内容。其中一些功能基于Proj.4。
Libcurl
Libcurl是一个客户端库,支持FTP、FTPS、HTTP、HTTPS、Gopher、Telnet、Dict、文件和LDAPURL转换。如果要提供WMS支持,则需要此库。WMS协议用于在网络上传输地图图像和文件数据。为了保持地图服务器环境的简单,因此不必安装。
SDE客户端库
SDE客户端库是ESRI空间数据仓库的一部分。如果希望MapServer访问它,则需要编译该库。
2、MapServer在Windows下的安装
MapServer能够在多种不同的系统(Windows、Linux、Mac OS X等)上运行,此次只讲解在Windows下安装MapServer,其他平台安装参考官方帮助。
在Windows下还需要安装Apache2、CGI和MapServer程序,这些程序在Windows下也有二进制包,但这种循序渐进的安装比较麻烦,容易出现问题,建议使用 MS4W (MapServer4 Windows),链接为:https://www.ms4w.com/。
2.1下载MS4W
下载的MS4W版本为5.0.0,下载链接为:https://ms4w.com/release/。
MS4W 5.0.0
These builds contain:
MapServer 8.3.0-dev
GDAL 3.10.0-dev
Apache 2.4.62
PHP 8.3.11
Python 3.12.6
MapCache 1.15-dev
2.2安装MS4W(MapServer4 Windows)
1、下载MS4W.zip,使用压缩软件(例如,好压、7zip)在驱动器的根目录(例如,驱动器 F:\)处提取软件包。如果成功,您应该在您选择的驱动器的根目录下有一个名为’ms4w’的新目录(例如, F:\ms4w)。
如果使用的是 setup.exe 安装进程,且在包含空格的路径中安装 MS4W,某些应用进程可能会出现问题。因此,建议不要将 MS4W安装在包含空格的路径中。最好将 MS4W 安装在驱动器的根目录下,例如 C:\或 D:\
2、完成后,请务必按照
根目录/ms4w/REQUIREMENTS.txt
中的说明在系统上安装 C++Redistributable。
路径:根目录:\ms4w\tmp
文件:VC_redist.x86.exe
3、管理员状态下cmd运行
根目录\ms4w\apache-install.bat
(cmd下,也可切换换盘符,再cd至路径,运行.bat),启动 MS4W Apache Web Server安装(打开命令提示符窗口并在命令行中执行它,不建议只双击该文档,此文件将 Apache 安装为 Windows 服务),
安装成功后命令窗口中应显示下图红色框内消息
,且任务管理器窗口中服务
“ApacheMS4WWebServer”
正在运行。
2.3查看 MS4W安装结果
要测试 Apache 是否正常运行,请打开 Web 浏览器,然后通过输入以下 URL 之一找到本地主机 Web 服务。
现在,我们在 Web 浏览器中看到 MS4W 主页面。这为您提供有关安装的一般信息以及配置信息。如果这是您第一次使用 MS4W,请务必查看 MS4W 中安装的列出的“Feature”,并通过选择此页面上的每个链接来测试它们。
恭喜你!!!,当你做到这里,你已经安装成功了,你太棒了。继续加油哦!
3、web应用的安装
从技术上讲,此时,MS4W 已安装!但是,正如您可能已经从 MS4W 主页中看到的那样,没有我们需要的应用进程正在运行(Openlayers)。
这表示在我们MS4W的Web可访问目录
/ms4w/apps/
中没有安装web应用(GeoMoose 或 OpenLayers 等 Web 应用)。
如果你想安装web应用,配置了MS4W的Web应用进程可以在https://ms4w.com/release/apps/上作为单独的zip文档找到。**下文以安装Openlayers为例**,首先下载Openlayers的的zip文件。
要将Openlayers(指定的Web应用程序)安装,只需要解压缩Openlayers压缩文档,将压缩包内的文件放置在对应MS4W相同的目录下,
图中Openlayers压缩包内Apached的文件被放至ms4w内Apache文件内,其他文件类似
。
复制完后应发生两件事。1、Web 应用程序目录应显示在/ms4w/apps/中,2、应将新的 httpd_*.conf 文档添加到/ms4w/httpd.d/httpd_*.conf。
1、Openlayers(Web应用程序)目录应显示在/ms4w/apps/中,如
openlayers-6.1.1
。
2、ms4w/httpd.d/目录中包含Apache配置文档,用于定义计算机/服务器上的哪些文档可通过Web访问。对于您安装的Openlayers(每个 Web 应用进程),将找到httpd_openlayers.conf
(一个新的配置文档)
这些可通过 Web 访问的目录的定义称为 Web 别名。要激活 Web 别名,必须重新启动 Apache(管理员cmd窗口运行apache-restart.bat,或cd至X:\ms4w\Apache\bin,输入命令)。
必须在管理员权限cd至X:\ms4w\Apache\bin,输入这些命令
避个雷,你可能在网上搜到启动Apache服务的命令下面这些,这对于ms4w是错误的:
1.httpd -k start #启动apache服务
2.httpd -k stop/shutdown #关闭apache服务
3.httpd -k restart #重启apache服务
**ms4w下Apache服务的名称是“Apache MS4W Web Server”
,所以ms4w的Apache服务的命令需指定服务名称(-n),正确的是:**
1.httpd -k start -n “Apache MS4W Web Server” #启动apache服务
2.httpd -k stop/shutdown -n “Apache MS4W Web Server” #关闭apache服务
3.httpd -k restart -n “Apache MS4W Web Server” #重启apache服务
要测试您最新安装的应用进程,请转到 MS4W 主页 index.html 页面(即 http://localhost/)。在 Applications (应用程序)部分中,您现在应该可以找到您刚刚安装的应用进程的链接。选择指向最近安装的应用程序的链接,以查看它是否已正确配置,如下图1、图2。
另一种选择是查找应用进程的 Web 别名,然后直接从 Web 浏览器调用它。例如,如果您安装了最新的 MS4W 版本的Openlayers,则 Web 别名为“Openlayers”。要转到 Openlayers 索引页面,只需输入 http://localhost/openlayers/,如下图3所示。
参考
感谢以下列举、未列举的作者提供的帮助:
安装和配置MapServer(指南):http://webgis.cn/mapserver-setup-setup.html
MapServer官方帮助(权威,详细):http://webgis.cn/mapserver-setup-setup.html
MapServer安装(简洁、明了):https://blog.csdn.net/Oruizn/article/details/111681844
MapServer之安装和基本使用(详细、明了):https://houzw.github.io/2017/01/18/MapServer%E4%B9%8B%E5%AE%89%E8%A3%85%E5%92%8C%E5%9F%BA%E6%9C%AC%E4%BD%BF%E7%94%A8/
windows 安装 apache(启发):https://blog.51cto.com/tech4fei/5985330
MapServer应用(下一节的引导):https://www.cnblogs.com/eshinex/p/10276449.html
版权归原作者 世界听的明白 所有, 如有侵权,请联系我们删除。