Đơn giản nhất có thể hiểu mapserver như là một
chương trình CGI được đặt (inactive) trong webserver. Khi mà có 1 request gửi đến
mapserver, nó sử dụng thông tin được truyền ở request URL và trong mapfile để tạo
hình ảnh của bản đồ được yêu cầu. Request cũng có thể trả về hình ảnh cho ghi
chú, thanh co dãn, bản đồ tham chiếu và giá trị được truyền như là những biến
CGI.
Sơ đồ khái niệm của một ứng dụng mapserver
Cấu trúc mapserver
Mapserver có
thể được mở rộng và điều chỉnh tùy vào người sử dụng. Nó có thể được xây dựng để
hỗ trợ nhiều dữ liệu nhập và xuất. Điều này được thực hiện khi mapserver được
biên dịch.
Mapscript
Mapscript
cung cấp 1 interface dạng script cho mapserver để cấu trúc xây dựng web và ứng
dụng độc lập. Mapscript được sử dụng độc lập với CGI mapserver, nó là 1 module
có thể load, các chức năng của mapserver được thêm vào ngôn ngữ script mà người
sử dụng thích nhất. Mapscript hiện tại tồn tại trong PHP, Perl, Python, Ruby,
Tcl, Java, C#.
Một ứng dụng
mapserver đơn giản gồm các thành phần:
Ø Map file: 1 kiểu
cấu hình cấu trúc text cho ứng dụng mapserver. Nó định dạng kích thước của bản
đồ, chỉ cho mapserver biết dữ liệu nằm ở đâu và xuất hình ảnh đến đâu. Nó định
nghĩa các tầng của bản đồ, bao gồm nguồn dữ liệu, sự chiếu và những ký hiệu.
(có dạng .map).
Ø Dữ liệu địa lý:
mapserver có thể sử dụng nhiều kiểu nguồn dữ liệu địa lý. Mặc định là ESRI
shapefile.
Ø Trang HTML: giao
tiếp giữa người sử dụng và mapserver. Thường được đặt trên web root. Ở dạng đơn
giản nhất, mapserver có thể được gọi để đặt 1 hình ảnh bản đồ tỉnh trên trang
html. Để làm cho bản đồ tương tác, hình ảnh được đặt trên 1 form của trang
html.
Chương trình CGI có trạng thái stateless, mỗi
request mà nó nhận được là mới và nó không lưu nhớ bất cứ thứ gì về lần cuối nó
được tương tác bởi ứng dụng của bạn. Do đó mỗi lần ứng dụng gửi yêu cầu đến
Mapserver, nó cần truyền thông tin như (những layer được kích hoạt, vị trí trên
bản đồ, kiểu của ứng dụng, …) trong 1 form ẩn hoặc trong biến của URL.
Ø Thường có 2 loại
trang khởi tạo và trang khuôn mẫu.
ü Trang khởi tạo: sử dụng form với những biến ẩn để gửi câu truy vấn khởi tạo đến
http server và mapserver. Form này có thể được đặt trên 1 trang khác hoặc được
thay thế bởi việc truyền thông tin khởi tạo thông qua các biến của URL.
ü Trang khuôn mẫu
(html template): điều khiển các bản đồ và chú thích xuất bởi mapserver, chứa
các khuôn mẫu sẽ hiện lên browser. Bằng những biến tham chiếu
đến Mapserver CGI trong file html mẫu, bạn cho phép Mapserver sinh ra các thành
phần của bản đồ với những giá trị liên quan đến trạng thái hiện hành của ứng dụng (như tên hình ảnh bản đồ, tên
hình ảnh tham chiếu, kích thước bản đồ,...) khi nó tạo trang html cho browser đọc.
File mẫu html này cũng quyết định cách người sử dụng có thể tương tác với bản đồ
(phóng to, thu nhỏ, định vị, truy vấn).
Ø Mapserver CGI: nhận yêu cầu và trả về các hình ảnh và dữ liệu. Nó nằm trong
cgi-bin hoặc thư mục script của http server. Người sử dụng Web server phải có
quyền thực thi ở thư mục chứa Mapserver CGI, vì lý do bảo mật nó không nên được
đặt trong web root.
Ø HTTP servser: phục
vụ yêu cầu của những trang html khi được
tác động bởi web browser. Ta cần 1 HTTP server như là Apache
hoặc Microsoft Internet
Information Server đặt trên máy cà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
Không có nhận xét nào:
Đăng nhận xét