1. Cách cài đặt
Download MapServer tại đây: http://mapserver.gis.umn.edu/download
Download các mã nhị phân tiền biên dịch tại
đây. Đối với tutorial này sẽ không có gì khác biệt giữa MS4W cho PHP4 hoặc
PHP5.
(Một cách khác, chúng ta có thể download, cài
đặt toolkit như vậy và tự compile MapServer, tuy nhiên việc này thì khó hơn nhiều).
Cài đặt:
Ø
Extract tập tin zip, ra ở vị
trí: C:\ms4w.
Ø
Sau khi giải nén xong, ta chạy
file apache.install để khởi động apache
Chạy file apache.install
2. Tạo MapFile
Đăng
ký một thư mục làm việc
Ø
Trong thư mục C:\ms4w\httpd.d tạo
1 file httpd_thailand.conf (bằng text editor) có nội dung (lưu ý viết thường và
viết hoa):
Alias
/thailand/ "/ms4w/apps/thailand/"
Alias
/ms\_tmp/ "/ms4w/tmp/ms\_tmp/"
<Directory
"/ms4w/apps/thailand/">
AllowOverride None
Options Indexes FollowSymLinks Multiviews
Order allow,deny
Allow from Allow from all
</Directory>
Ø
Giải nén file thailand.zip vào
thư mục C:/ms4w/apps/thailand .
Trong file này có các file .shp ở mục data (các lớp dữ liệu gồm có “forest”,
railroad). Tạo 1 file text mới có tên là config.map với nội dung như sau:
MAP
NAME Thailand
IMAGECOLOR 255 255
255
SIZE 600 800
IMAGETYPE PNG24 ##
use AGG to for anti-aliassing
OUTPUTFORMAT
NAME 'AGG'
DRIVER AGG/PNG
MIMETYPE
"image/png"
IMAGEMODE RGB
EXTENSION
"png"
END # outputformat
PROJECTION
"init=epsg:4326"
#latlon on WGS84
END
EXTENT 97.35 5.61
105.65 20.47 # lon/lat extents of Thailand
WEB
IMAGEPATH "/tmp/ms_tmp/"
IMAGEURL
"/ms_tmp/"
METADATA
"map"
"C:/ms4w/apps/Thailand//config.map"
"ows_schemas_location"
"http://schemas.opengeospatial.net"
"ows_title"
"Sample WMS"
"ows_onlineresource"
"http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/thailand/config.map&"
"wms_srs"
"EPSG:4326 " #latlon
"wms_feature_info_mime_type"
"text/plain"
"wms_server_version"
"1.1.1"
"wms_formatlist"
"image/png,image/gif,image/jpeg"
"wms_format"
"image/png"
END #metadata
END #web
LAYER
NAME
"forest"
TYPE POLYGON
STATUS ON
DATA data/forest
TOLERANCE 8
TOLERANCEUNITS
pixels
METADATA
"wms_include_items"
"all"
"ows_title"
"railroad"
END #metadata
PROJECTION
"init=epsg:4326"
END
CLASS
NAME
"forest"
TEMPLATE "templates/query.html"
OUTLINECOLOR 255
255 255
COLOR 137 205 102
END #class forest
END #layer
LAYER
NAME
"railroad"
TYPE LINE
STATUS ON
DATA data/railroad
TOLERANCE 15
TOLERANCEUNITS
pixels
METADATA
"wms_include_items"
"all"
"ows_title"
"railroad"
END #metadata
PROJECTION
"init=epsg:4326"
END
CLASS
NAME
"railroad"
TEMPLATE
"templates/query.html"
OUTLINECOLOR 255
255 255
COLOR 237 0 0
END #class
railroad
END #layer railroad
END #map
Giờ chúng ta bật trình duyệt web đánh nội
dung như sau và thành địa chỉ:
http://localhost/cgi-bin/mapserv.exe?map=C:/ms4w/apps/thailand/config.map
&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=forest,railroad&STYLES=&SRS=EPSG:4326&BBOX=97,5,106,21&WIDTH=600&HEIGHT=800&FORMAT=image/png
Kết quả gọi trang web (gồm có 2 lớp forest,railroad)
3. Cách hoạt động của MapServer
Mapserver thường hoạt
động phía sau 1 ứng dụng web server. Web server nhận những yêu cầu bản đồ và
truyền chúng đến mapserver để tạo. Mapserver tạo ra hình ảnh bản đồ được yêu
cầu và truyền đến web server, web server truyền nó đến người sử dụng thông qua
web browser. Hình sau cho thấy người sử dụng tương tác với web server, tạo yêu
cầu gửi đến chương trình mapserver.
Chức năng chính của
mapserver là đọc dữ liệu từ nhiều nguồn dữ liệu khác nhau và kéo các layer lại
tạo thành 1 file hình như 1 hình ảnh bản đồ. Hình ảnh sau cho thấy hoạt động cơ
bản của 1 ứng dụng mapserver.
Hoạt động cơ bản của 1 ứng dụng mapserver
Một layer có thể là hình ảnh từ vệ tinh,
đường biên giới của 1 quốc gia, hay 1 điểm thể hiện hình ảnh thành phố chính.
Mỗi lớp được được đặt ở trên hoặc ở dưới lớp khác và sau đó được in thành dạng
web hình ảnh thân thiện cho người sử dụng. Một ví dụ về việc chồng lấp lớp và
quá trình tạo bản đồ được thể hiện ở hình sau. Trong đó, bạn có thể thấy hình
ảnh vệ tinh, những con đường, địa điểm thành phố, nhãn của các thành phố được
sinh tự động bởi Mapserver.
Hãy like nếu bài viết có ích →
Kết bạn với gisgpsrs trên Facebook
để nhận bài viết mới nóng hổi
"Download các mã nhị phân tiền biên dịch tại đây. Đối với tutorial này sẽ không có gì khác biệt giữa MS4W cho PHP4 hoặc PHP5"
Trả lờiXóatại đây là tại đâu ạ
Mục thailan.zip lấy ở đâu ra bạn nhỉ
Trả lờiXóa