MapServer Tutorial——MapServer7.2.1教程学习——教程背景

MapServer Tutorial——MapServer7.2.1教程学习——教程背景

一、前言

  目前处于MapServer学习入门阶段,所以每一步都需要打下扎实基础。尽自己最大的努力,去学习知识的细节。一步一步按照官网上的教程操作。争取掌握MapServer.

二、教程时间表

  高手可能在一天内就完成了所有的操作,新手可能需要一个星期。(希望给每个公司都能入职的新人拟定相关的学习计划和给定适当的时间周期去学习,不是每个人生来就是天才,但是给他们学习和挖掘的机会。)

三、教程数据资源

  教程的数据资源来自于美国内政部美国国家地图集( the U.S. Department of the Interior’s National Atlas of the United States),其域名为 data.gov

  教程数据被裁减到明尼苏达州、密歇根州和威斯康星州等地区,以便减少存储空间。

  额外的光栅图像数据由明尼苏达大学的Terrasip项目提供。

  在使用教程的时候,你也可以用自己的数据资源。

  对于任何人而言,MapServer的教程是开放和可以自定义的。这样做是希望能够帮助到任何的开发以及设计。

  在 http://download.osgeo.org/mapserver/docs/mapserver-tutorial.zip可以下载当前教程的数据。

四、使用教程前

  在使用教程前需要做相关的前期准备工作。

    1. 在使用教程前,用户需要有web服务器(我的是IIS,详见《MapServer Configuring with IIS》),同时web服务器需要支持CGI程序(common gateway interface)。

    2. 用户需要多web服务器以及Internet安全有基本的了解。配置不好的Web服务器很容易受到恶意人员的攻击。

    3. 建议在使用教程前,先阅读MapServer简介

    4. 在使用教程前,请先安装MapServer CGI程序(详见《MapServer Configuring with IIS》),可以在https://www.mapserver.org/download.html#download下载MapServer的源码,然后编译安装。也可以下载编译好的进行安装(详见《MapServer Configuring with IIS》)。

      4.1 UNIX用户编译安装,请见:MapServer UNIX Compilation and Installation HOWTO

      4.2 Windows用户编译安装,请见:MapServer Win32 Compilation and Installation HOWTO 。

      另外,很多平台有预编译好的二进制文件,详见https://www.mapserver.org/download.html#download

五、Windows, UNIX/Linux Issues(windows,unix/linux中的问题)

  1.Paths(文件路径)

    本教程是在Linux/Unix上创建的,但是应该在Windows平台上进行最小的更改。主要区别在于地图文件中的路径。Windows用户需要指定其教程文件所在硬盘的驱动器号。

    UNIX地图文件参数配置如下:

      SHAPEPATH "/data/projects/tutorial/data"

    Windows参数配置如下:

      SHAPEPATH "C:/data/projects/tutorial/data"

        或者

      SHAPEPATH "C:\data\projects\tutorial\data"

    注意:

      1.红色数据文件路径部分,请根据自己实际文件填写。如我自己的是: SHAPEPATH  "E:\SvnWorkspace\LY_WEB_GIS\branches\Documents\ms4w-mapserver-for-wimdows\release-1911-x64-gdal-2-3-3-mapserver-7-2-1\apps\tutorial\data"

      2.下载资源文件,http://download.osgeo.org/mapserver/docs/mapserver-tutorial.zip,并解压。解压的文件结构如下:

        |----ms4w(文件夹)

          |----Apache(文件夹)

          |----apps(文件夹)

            |----tutorial(文件夹)

              |----data(文件夹)

              |----fonts(文件夹)

              |----htdocs(文件夹)

              |----images(文件夹)

              |----java(文件夹)

              |----javascript(文件夹)

              |----perl(文件夹)

              |----symbols(文件夹)

              |----templates(文件夹)

              |----README.txt

          |----httpd.d(文件夹)

        |----README.txt

      3.结合上一篇《MapServer Configuring with IIS》,我将解压后的tutorial文件夹放到E:\SvnWorkspace\LY_WEB_GIS\branches\Documents\ms4w-mapserver-for-wimdows\release-1911-x64-gdal-2-3-3-mapserver-7-2-1\apps里面(红色部分路径根据你的实际安装路径选择),作为学习使用。

      4.斜杠(/)和反斜杠(\)在windows中均可以使用,但是在Unix里面,请使用斜杠(/)。

      5.在讨论路径问题时,mapfiles中的路径通常与系统根目录有关系,Unix的根目录通常为斜杠(/),而window是的通常是盘符,如:C、D等。除非使用URL或引用URL的时候。使用HTML模板文件时,路径是相对于你所发布的web应用程序的根目录的。例如,“/tutorial/”是相对于“http://demo.mapserver.org/”的。请阅读https://alistapart.com/article/slashforward了解有关URL的一些细节。

  2.CGI的可执行路径

    在Unix上面,可执行文件不需要 .exe 或 .com 执行文件。但是在windows上面,你需要将.mapserv.exe添加到你的站点程序上面。(详见《MapServer Configuring with IIS》,CGI拓展和FastCGI)

六、其他资源

  还有其他文档可以让您更好地了解MapServer提供的许多定制。请访问MapServer文档页面:http://www.mapserver.org/documentation.html。在这里,您可以找到几个howto文档,从入门到使用mapscript,这是一个针对mapserver的脚本接口。

原文地址:https://www.cnblogs.com/eshinex/p/10276296.html

时间: 2024-11-08 15:13:45

MapServer Tutorial——MapServer7.2.1教程学习——教程背景的相关文章

MapServer Tutorial——MapServer7.2.1教程学习(大纲)

MapServer Tutorial--MapServer7.2.1教程学习(大纲) 前言 最近在学习Gis方面的知识,因为电脑硬件配置偏低,顾选择MapServer入手.网上搜索MapServer系列教程较少,对于入门级开发人员而言,还是有一定的难度,所以在自己通过官网学习之余,也将官网的案例加以实践和记录,方便自己学习实践和后续查阅.也为其他入门新手略尽绵薄之力.官网地址:https://www.mapserver.org/tutorial/index.html. 其实我自己下载的是编译好的

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.1 A map with single layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.1 A map with single layer 一.前言 开始MapServer用例实践之旅,做项目算是可以比喻为考试,但是考试之前,还是以做练习题模拟考为主.下面实践一下官网的第一个例子:Example1.1 A map with single layer(官网地址:https://www.mapserver.org/tutorial/example1-1.html#examp

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.2 Static Map with Two Layers 一.前言 上一篇博客<MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.1 A map with single layer>中介绍了单图层的地图加载显示.下面根据官网的例子介绍两个图层的加载显示.官网地址:https://www.mapserver.org/tu

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.3 Displaying Classes in a Layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.3 Displaying Classes in a Layer 一.前言 关于第一节的案例,分别介绍了一个基本的地图站点应用程序创建和多图层地图站点 应用程序创建.这个案例 主要来介绍一下mapfile文件中 LAYER 对象里面,CLASS对象的应用. 同时还有如何根据CLASSITEM.EXPRESSION等配置去修改地图的显示方式. 最后还有一个很酷炫的方法一次性读取shp文件

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example 1.4 Labeling the Map 一.前言 MapServer拥有非常灵活的标签标记系统.它支持bitmap以及truetype字体等.使用truetype字体同时还支持其缩放.标签的角度和位置是可以自定义的. 通过把标签的位置和角度以及其他参数的设置使用,你可以把你的地图装饰得更加美观,信息体现的更加丰富. 二.搭建Example1.4站点 所有的学习都要通过实践,还是从搭建

MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.5 Adding a raster layer

MapServer Tutorial--MapServer7.2.1教程学习--第一节用例实践:Example1.5 Adding a  raster layer 一.前言 MapServer不仅支持矢量数据(point, lines, polygons, and annotations),同时也支持栅格数据.通过GDAL库,MapServer可以输入输出多种类型的栅格数据. 在4.x版本前,MapServer输出栅格数据仅限于单个图层.灰度图像或伪彩色图像. 当前版本支持RGB图像和多光谱图像

Python高级核心技术97讲 系列教程 学习 教程??

Python高级核心技术97讲 系列教程 学习 教程 Python的标准整数类型是最通用的数字类型.在大多数32位机器上,标准整数类型的取值范围是-2**31到2**31-1.Python的长整数类型能表达的数值仅仅与你的机器支持的(虚拟)内存大小有关,换句话说,Python能轻松表达很大的整数.长整型类型是标准整型类型的超集,当程序需要使用比标准整型更大的整型时,可以使用长整型类型.在一个整型值后面加个L,表示这个整型是长整型.这两种整数类型正在逐渐统一为一种.剩下的一种整型类型是布尔整型.即

redis学习教程五《管道、分区》

redis学习教程五<管道.分区> 一:管道 Redis是一个TCP服务器,支持请求/响应协议. 在Redis中,请求通过以下步骤完成: 客户端向服务器发送查询,并从套接字读取,通常以阻塞的方式,用于服务器响应. 服务器处理命令并将响应发送回客户端. 管道的意义 管道的基本含义是,客户端可以向服务器发送多个请求,而不必等待回复,并最终在一个步骤中读取回复. 示例 要检查Redis管道,只需启动Redis实例,并在终端中键入以下命令. (echo -en "PING\r\n SET t

java学习教程之代码块

学编程吧java学习教程之代码块发布了,欢迎通过xuebiancheng8.com来访问 java中的代码块包括下面几种: 1.普通代码块 2.构造代码块 3.静态代码块 1.普通代码块很简单看下面这个例子: public class Test{ public static void main(String args[]){ { //此处就是普通代码块,普通代码块中的代码按顺序执行 System.out.println("hello"); } } } 2.构造代码块 public cl