首页 > 其他分享 >【WebGIS】1、基于MS4W的MapServer安装

【WebGIS】1、基于MS4W的MapServer安装

时间:2024-10-11 19:51:20浏览次数:10  
标签:Web WebGIS ms4w MapServer Apache 安装 MS4W

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 服务。

http://localhost/
http://127.0.0.1/

现在,我们在 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

标签:Web,WebGIS,ms4w,MapServer,Apache,安装,MS4W
From: https://blog.csdn.net/u013984204/article/details/142816280

相关文章

  • WebGIS开发必学开源框架Openlayers(附赠视频教程+电子书)
    WebGIS开发之Openlayers当前,WebGIS开发领域的流行度不断攀升,导致市场上对该技能的需求与供应之间存在一定的紧张关系。在众多WebGIS开源框架中,如OpenLayers、Leaflet、MapBox、MapFish、GeoServer、GeoEXT和MapInfo等,企业通常期望应聘者能够掌握至少一种框架的开发能力,例如Op......
  • WebGIS开发系列教程(2):Openlayers概述
    本系列教程为webgis二维开发入门openlayers零基础小白学习教程,本篇为第二篇。完整版可以查看文末链接下载。上一篇:下一篇:1.Openlayers是什么Openlayers是一个模块化、高性能并且功能丰富的WebGIS客户端的JavaSript包,用于显示地图及空间数据,并与之进行交互,具有灵活的扩展机......
  • Gitee上那些开源的WebGIS项目(三):基于webGIS的大气监测系统
    项目介绍本项目是我的本科毕业设计,基于webGIS的大气监测系统,主要是基于ArcgisApiforjs构建了一个大气监测系统,并且通过Deeplearning4j深度学习库构建lstm模型进行空气质量指数预测。主要实现污染物可视化,模型训练,AQI指数预测等。项目地址:https://gitee.com/nimi317该......
  • Gitee开源WebGIS项目-openlayers广西水利信息在线分析服务系统
    介绍Openlayers项目,广西水利信息在线分析服务系统。模拟广西壮族自治区的水利信息相关数据,结合GIS应用,通过地图标注、图表与动态推演等方式,直观模拟展现广西壮族自治区当前的水情、雨情状况,以及台风情况。本仓库代码为后端代码,所用数据都是模拟的。前端代码网址:https://git......
  • WebGIS面试题:GIS篇(六)
    本系列内容主要介绍webgis开发过程中可能会遇到的常见面试题和答案,从前端到二维到三维,干货满满。记得关注我不走丢!需要更多面试题、视频讲解、webgis教程的宝子戳↓↓↓免费领取2024最新webgis学习教程 前几期内容点击下方链接:WebGIS开发面试题:前端篇(一)WebGIS开发面试题:......
  • 零基础上手WebGIS+智慧校园实例(长期更新#2)【html by js】
    请点个赞+收藏+关注支持一下博主喵!!!等下再更新一下1.WebGIS矢量图形的绘制(超级详细!!),2.WebGIS计算距离,以及智慧校园实例with3个例子!!!!,尽情期待!!!之后代码+资料全部发到github里,希望大家能关注一下咱的Github进行WebGIS开发时,引入API是一个关键步骤,它允许开发者将地图服务和功......
  • 安装包丨WebGIS开发环境搭建及所需工具
    以下工具为GIS开发中所涉及到的工具,当然如果您已经非常精通web前端领域,并有其他习惯的工具也可以忽略~1.开发工具:Node安装Node.js是一个基于ChromeV8引擎的JavaScript运行环境Node.js使用了一个事件驱动、非阻塞式I/0的模型,使其轻量又高效Node.js的包管理器n......
  • 大一地信新生,如何从0规划学习WebGIS开发!附通关攻略
    关于学习WebGIS开发,很多GIS专业的学生,从大一开始苦恼从哪里入手?内容太多,不知道什么是重点?不了解企业实际应用情况,怕所学非所用。关于这一点,小编通过本文详细介绍一下!WebGIS(网络地理信息系统)是指工作在Web网上的GIS,是传统的GIS在网络上的延伸和发展,具有传统GIS的特点,可以实现......
  • WebGIS产品分析
    WebGIS(网络地理信息系统)是指基于网络平台,客户端应用软件采用网络协议,运行在网络上的地理信息系统,即将GIS所能提供的功能通过网络展现给用户。顾名思义,WebGIS就是展现在网络上的GIS,是GIS与Web融合的产物。GIS通过Web功能得以扩展,使得GIS冲破专业圈子,真正成为大众化的GIS。如今,网......
  • 【WebGIS期末作业】
    项目背景表1湖南传统村落不同批次占全国总数分布表随着现代化和城镇化进程的加快,根据2017年发布中国传统村落蓝皮书显示,4153个传统村落面临消失危险,大部分传统村落现主要面临以下4个问题:传统村落数量锐减、毁坏严重、非物质文化遗产面临断层以及建设性破坏与环境污染,因此......