【问题标题】:How I can get a wms-Layer from mapserver like we do with a geoserver?如何像使用地理服务器一样从地图服务器获取 wms-Layer?
【发布时间】:2015-05-15 09:19:51
【问题描述】:

我的问题不是很清楚,但我会尝试解释一下。例如,当我们从 Qgis 中的 geoserver 调用 wms 层时,我们会写 http://adresse/geoserver/wms?我们找到了我们发布的所有图层.. 我也想做同样的事情:写一个 mapserver_adresse 并获取我用 mapserver 发布的图层(我不想在地址中写地图文件名).. 是吗可能,我应该从哪里开始?谢谢

【问题讨论】:

    标签: geoserver wms mapserver


    【解决方案1】:

    您必须在可执行 mapserv 所在的同一位置编写脚本。在此脚本中,您设置变量 MS_MAPFILE=/path/your/mapfile 然后执行 mapserv。

    在 Linux 上是这样的:

    #! /bin/bash
    export MS_MAPFILE=/path/your/mapfile
    ./mapserv
    

    不要忘记#! /bin/bash,否则 mapserver 将拒绝工作。

    将此脚本保存在mapserv所在的同一位置并使其可执行,即:

    chmod +x /usr/lib/cgi-bin/your_script 
    

    现在你可以用这个地址在qgis中作为wms服务器使用:

    http://address/cgi-bin/your_script?
    

    如果你也想隐藏“cgi-bin”部分,可以用apache来做。

    另请参阅地图服务器识别的所有其他环境变量:

    https://trac.osgeo.org/mapserver/wiki/EnvironmentVariables

    在带有 Apache 的 Windows 上,您可以使用 SetEnvIf 指令执行相同的操作,例如:

    SetEnvIf Request_URI "/cgi-bin/exemplars/BGS_Bedrock_Geology/wms" MS_map file=/ms4w/apps/cookbookExemplars/BGS_Bedrock_Raster_Map/onegeology.map
    

    【讨论】:

    • 再次感谢.. 快速完成,我创建了一个地图文件,并包含了所有其他图层(包括 layer1.mapfile,包括 layer2.mapfile 等),我从Qgis,,它的工作。无论如何,上面的答案是最好的解决方案..谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 1970-01-01
    • 2018-02-10
    相关资源
    最近更新 更多