映射上下文文件

支持本地映射上下文文件

有一个名为context的CGI参数,用于指定本地上下文文件。然后,用户可以使用mapserver使用以下语法请求映射:

http://localhost/mapserver.cgi?MODE=map&MAP=/path/to/mapfile.map&CONTEXT=
                     /path/to/contextfile.xml&LAYERS=layer_name1 layers_name2

备注

从上下文文件创建的所有层的状态都设置为“开”。为了能够显示层,用户需要在url中添加layers参数。

支持通过URL访问上下文文件

使用Web可访问上下文文件的语法类似于访问本地上下文文件:

http://localhost/mapserver.cgi?MODE=map&MAP=/path/to/mapfile.map&CONTEXT=
            http://URL/path/to/contextfile.xml&LAYERS=layers_name1 layer_name2

出于安全考虑,默认情况下禁用从URL加载文件。要启用此功能,用户需要在允许此功能的默认映射文件中设置一个名为cgi_context_url的配置参数。下面是一个带有config参数的映射文件示例:

# Start of map file
NAME DEMO
STATUS ON
SIZE 400 300
EXTENT -2200000 -712631 3072800 3840000
UNITS METERS
IMAGECOLOR 255 255 255
IMAGETYPE png
CONFIG "CGI_CONTEXT_URL" "1"
...

默认映射文件

要使用映射上下文顺利运行MapServer CGI应用程序,应用程序管理员需要提供一个默认映射文件,其中至少包含将与该上下文文件一起使用的基本必需参数。此默认映射文件可以包含与imagepath和imageurl一样少的信息,也可以包含层列表。来自上下文的信息(例如:层、宽度、高度、__)将被附加或替换 Mapfile 中的值。

以下是包含最小必需参数的默认映射文件示例:

NAME CGI-CONTEXT-DEMO
STATUS ON
SIZE 400 300
EXTENT -2200000 -712631 3072800 3840000
UNITS METERS
IMAGECOLOR 255 255 255
IMAGETYPE png
#
# Start of web interface definition
#
WEB
  MINSCALE 2000000
  MAXSCALE 50000000
#
# On Windows systems, /tmp and /tmp/ms_tmp/ should be created at the root
# of the drive where the .MAP file resides.
#
  IMAGEPATH "/ms4w/tmp/ms_tmp/"
  IMAGEURL "/ms_tmp/"
END
END # Map File