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的脚本接口。

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

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

    MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.7 Adding a wms layer 前言 Add OGC WMS Layers( ...

  2. MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.6 Defining Projections and Extents

    MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.6 Defining Projections and Extents 一.前言 当在m ...

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

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

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

    MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example 1.4 Labeling the Map 一.前言 MapServer拥有非常灵活的标签 ...

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

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

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

    MapServer Tutorial——MapServer7.2.1教程学习——第一节用例实践:Example1.2 Static Map with Two Layers 一.前言 上一篇博客< ...

  7. 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用 ...

  8. MapServer Tutorial——MapServer7.2.1教程学习——第一节:MapServer的基本配置管理,静态地图应用以及MapFile文件

    MapServer Tutorial——MapServer7.2.1教程学习——第一节:MapServer的基本配置管理,静态地图应用以及MapFile文件 前言 万事开头难,有了<MapSer ...

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

    MapServer Tutorial——MapServer7.2.1教程学习(大纲) 前言 最近在学习Gis方面的知识,因为电脑硬件配置偏低,顾选择MapServer入手.网上搜索MapServer系 ...

随机推荐

  1. git 如何删除已经add的文件

    git rm --cached "文件" 参考: https://blog.csdn.net/kiss_the_sky/article/details/77921206

  2. 三、UI开发之核心基础——约束(入门)

    先学个新技能:添加图片控件Image View iOS的图片控件是ImageView,ImageView通过提前载入用户指定的图片资源来显示相应的图片. 所以图片控件的关键信息有3个: 1. Imag ...

  3. 求职季全攻略:优秀的UX设计师作品集该如何准备?

    这是一篇关于如何制作杰出的UX设计师作品集,看了下文,我们在2019年冲冲冲~制作出自己的作品集! 转自墨刀公众号. Paul Rand 曾经说:“设计很简单,因而也复杂.” 也许你已经掌握了所有的U ...

  4. 53.CSS---CSS水平垂直居中常见方法总结

    CSS水平垂直居中常见方法总结 1.元素水平居中 当然最好使的是: margin: 0 auto; 居中不好使的原因: 1.元素没有设置宽度,没有宽度怎么居中嘛! 2.设置了宽度依然不好使,你设置的是 ...

  5. HDU 1160

    FatMouse believes that the fatter a mouse is, the faster it runs. To disprove this, you want to take ...

  6. 19 Python标准异常总结 (转)

    Python标准异常总结 AssertionError 断言语句(assert)失败 AttributeError 尝试访问未知的对象属性 EOFError 用户输入文件末尾标志EOF(Ctrl+d) ...

  7. 线程同步——lock锁

    线程同步即解决线程安全问题的第三种方式——使用lock锁 代码实现: 其中,ReentrantLock是lock接口的实现类,这边是使用多态创建,访问成员方法时,编译看左,运行看右: Reentran ...

  8. 转:C#中Undo/Redo的一个简易实现

    一个比较常见的改进用户体验的方案是用Redo/Undo来取代确认对话框,由于这个功能比较常用,本文简单的给了一个在C#中通过Command模式实现Redo/Undo方案的例子,以供后续查询. clas ...

  9. flutter控件之ExpansionPanelList

    import 'package:flutter/material.dart'; class LearnExpansionPanelList extends StatefulWidget{ @overr ...

  10. Weighted Quick Union

    Weighted Quick Union即: 在Quick Union的基础上对结点加权(weighted),在parent[i]基础上增加一个size[i]. 用来存储该结点(site)的所有子结点 ...