Memulai menggunakan MapServer

Latar Belakang
Tugas Akhir saya terkait dengan GIS, lebih spesifik lagi mengenai bagaimana peta digital dapat digunakan melalui device mobile. Aplikasi GIS yang saya pakai pertama kali adalah ArcGIS, setelah itu baru saya mengenal MapObject dan menggunakan MapWindow untuk pemrogramannya di PC dengan bahasa pemrograman C#. Seperti yang kita ketahui, visual studio .Net membuat pemrograman menjadi lebih mudah, sehingga ketika memrogram menggunakan MapWindow tidak terlalu bermasalah.
Fitur-fitur di ArcGIS membuat saya mempunyai gambaran umum mengenai manipulasi data GIS, seperti query, labeling, symbology, geoprocessing, dsb. Sebagian fitur standard di ArcGIS pun menjadi standard saya bagaimana aplikasi GIS itu seharusnya berfungsi (standard yang cukup tinggi, bukan?!). Begitu juga aplikasi peta yang ingin saya buat pada Tugas Akhir saya.

Aplikasi mobile tentu mempunyai berbagai keterbatasan, ya memory, ya interface. Oleh karena itu tidak mungkin saya membuat aplikasi standalone pada sebuah device mobile untuk turis, oleh karena itu saya pilih arsitektur client server, dimana banyak data dapat disimpan di server sehingga keterbatasan memori pada device mobile dapat diatasi. Dari sinilah saya mulai mencari engine apa yang memungkinkan implementasi arsitektur client server, yaitu MapServer.

Mengenal MapServer

Pertama mendengar kata mapServer, gambaran yang saya dapat adalah mudah digunakan dan user friendly dilihat dari tampilannya. Tapi ternyata membuatnya benar-benar hardcode. Struktur map server lebih kurang sebagai berikut:

Map
a.    Layer#1
                                                          i.      Class#1
1.    Style
2.    Lable
                                                      ii.      Class#2
1.    Style
2.    Label
b.    Layer#2
                                                          i.      Class#1
1.    Style
2.    Lable

File mapServer berekstensi .map, dan di dalamnya kita bisa mendefinisikan banyak layer sekaligus, dimana tiap layer peta dapat kita definisikan kelasnya, meliputi style(pewarnaan, tampilan), label (penampilan nilai atribut), dan lainnya. Data dari tiap layer yang berekstensi .shp (shapefile, ekstensi data GIS di ArcGIS) kemudian diubah menjadi gambar (.png) sebelum ditampilkan di halaman html.

Navigasi MapServer
Karena web-based, navigasinya pun terbatas, dan untuk membuat navigasi seperti aplikasi desain ataupun GIS yang desktop-based jauh berbeda. Biasanya panning dapat dilakukan dengan mudah dengan ‘menarik’ peta untuk menggeser tampilannya, begitu pula zooming bisa dilakukan dengan menyorot area mana yang ingin diperbesar. Dengan mapServer, untuk dapat melakukan hal ‘sederhana’ yang dengan mudah sudah tersedia pada aplikasi desktop (mudah karena sudah tersedia library yang dapat langsung kita gunakan), kita harus menyisipkan kode javascript yang cukup kompleks.

Bagaimana MapServer Bekerja

Jika Anda pernah download tutorial dari sini, berikut merupakan salah satu URL yang dapat menampilkan peta example1-1.map dengan menggunakan alamat berikut

http://localhost/cgi-bin/mapserv.exe?map=C:/Program Files/ms4w /Apache/htdocs/ms4w/apps/tutorial/htdocs/example1-1.map&layer=states&mode=map

URL tersebut terbagi menjadi tiga bagian:

1. http://localhost/cgi-bin/mapserv.exe?

Bagian ini memanggil program CGI MapServer.

2. map=C:/Program Files/ms4w /Apache/htdocs/ms4w/apps/tutorial/htdocs/example1-1.map&layer=states&mode=map

Bagian ini merupakan parameter CGI untuk mendeskripsikan query, tiap query dipisah dengan tanda ‘&’.

a. variable ‘map’ diisi dengan direktori tempat file .map disimpan.

b. variable layer diisi dengan nama layer yang ingin ditampilkan.

c. variable mode diisi dengan mode tampilan peta. Mode tampilan diantaranya ada dua, mode map dan mode browse.

Mode Tampilan Peta pada MapServer
Mode menentukan output dari peta. Mode tampilan “map” akan menampilkan langsung peta ke browser (klien) tanpa membuat file gambar temporary di server. Mode tampilan “browse” akan mengubah peta menjadi file gambar temporary di server terlebih dahulu sebelum menampilkannya ke browser.

Berikut tampilan peta menggunakan MapServer yang sejauh ini saya explore:

Saya sangat menghargai partisipasi Anda untuk berdiskusi atau share pengetahuan mengenai MapServer (karena saya masih termasuk newbi juga ^_^). Semoga bermanfaat :)

About indz

A javanese girl with glasses who always try to get her dreams comes true. Has educational background at informatics ITB and really want to learn any interaction happened on the earth.
This entry was posted in IT Stuff and tagged , . Bookmark the permalink.

47 Responses to Memulai menggunakan MapServer

  1. Donny Reza says:

    GIS ya? blm bisa share, cuma sekali ikutan pelatihan digitasi peta pake arcView, setelah itu…nggak pernah nyentuh2 lagi. Kalo GIS, mending jadi yang tukang surveynya deh…hehe


    Wah, Arcview ya.. pasti udah lama banget pelatihannya.. ^_^
    Jadi tukang survey, ngambilin data dong? Kalo tempat surveynya asik sih gapapa mas.. Hehe..

  2. indz says:

    Maaf komen ini ga nyambung kemana2, cuma ga mw ngrusak flow postingan.. Saya ga mau minum kopi lagi! Cukup sudah secangkir kopi tadi siang mengubah jam tidurku dari yang semula jam 8 mlm, jadi jam 1.30 dini hari, dan jam segini masi belum ngantuk juga.. Detak jantungku terasa berdenyut lebih kencang, hiks :-(


    Huh.. ngerusak flow komen aja ni si indz :D

  3. upik says:

    ih,mentang2 instruktur FGA :P
    .
    wah,,merinding nih sama si Indri. ngeri lah (bahasa kek anak komlebs banget yak :P )


    Waduh, masi newbi lagi Pik ga perlu merinding :D
    Bukan mentang2 instruktur FGA, tapi karena udah masuk ke dunia GIS jadi keterusan nih,hehe :D

  4. bukan_saya says:

    wah wah udah siap pra sidang ni..
    bareng donk..
    kan kita seminarnya barengan..
    duluan ike beberapa jam malah..
    :( (


    Hue.. bareng? boleh, tapi ajak ak ke negerinya Won Bin juga dong.. :D hehe..

  5. khairul says:

    wah sama, kebetulan saya jg lagi TA dan topiknya
    webmapping menggunakan mapserver

    sampe sekarang lagi bingung apakah bisa melakukan pada mapserver melakukan proses geoprocessing seperti mencari daerah yang terletak 200 meter dr sungai dan 500 meter dr jalan.


    pak Khairul, eksplorasi saya belum sampa sejauh itu, saya baru mengeksplor elemen utama mapServer dan pengaksesan mapServer pada device mobile. Mungkin akan saya coba eksplor terlebih dahulu, terimakasih..

  6. harus mahir mapserver says:

    Wah, salut.
    Pak, bisa tuntun saya supaya mahir mapserver.?
    balasnya ke email ya,. tangan saya sudah pegel main digitasi.

  7. harus mahir mapserver says:

    oh, bikin kuesioner juga ya?
    kebetulan background saya statistik. Bisa kan kita diskusi dan belajar bareng, termasuk mapserver. ditunggu balasan di email saya, :)

  8. indz says:

    Silahkan pak, saya sudah kirim ke email bapak. Yang membuat kuesioner sekarang rekan saya pak, jadi pemilik web ini ada dua, saya dan rekan saya ^_^. Terimakasih..

  9. jhon.hendrix says:

    Hai.

    saya tertarik dengan tulisan mu tentang mapserver.
    sekarang ingin mengenal mapserver, tapi ga tau mulai dari mana,
    Tolong di share infomarsinya tentang mengoperasikan mapserver ya.

    kasus saya,

    mapserver dah jalan, trus bagaimana kelanjutannya?
    bagaimana membuat petanya?.

    tq atas perhatiannya yach

  10. indz says:

    Hai juga jhon,
    Untuk membuat peta, anda harus punya data peta dalam bentuk shapefile (.shp). Selanjutnya, ada dua pilihan, membuat webgis dari nol atau menggunakan framework yang sudah ada. Jika ingin menggunakan framework yang sudah ada, saya rekomendasikan untuk menggunakan pmapper, anda bisa mendownloadnya dari link ini : http://www.pmapper.net/download.shtml.
    Untuk membuat peta dari awal, anda harus definisikan mapfile (.map) yang merupakan konfigurasi peta yang ingin ditampilkan. Untuk mempelajari struktur .map dapat anda lihat di sini http://biometry.gis.umn.edu/tutorial/sections.html. Selanjutnya anda bisa menggunakan pemrograman yang familiar (php, c#, atau html standard) untuk menampilkan peta tersebut.
    Selamat mencoba, semoga membantu :)

    Salam.

  11. jhon.hendrix says:

    hai lagi deh.

    terima kasih atas responnya yaach…

    sebenarnya data peta udah ada. yaitu formatnya mxd.. itu saya buatan dengan arcGIS. trus peta-peta tersebut mau di tampilkan di Web. maka jadilah web gis.

    mohon komennya yaach.

    tq

  12. indz says:

    File berekstensi .mxd merupakan file dokumen dari Arcgis yang di dalamnya memuat data peta per layer yang berupa shapefile. Anda dapat menggunakan kumpulan data shp tersebut untuk ditampilkan mapserver dalam web.

  13. phaichal says:

    halo… lam kenal,ak jg newbie d mapserver mau nanya nih..
    bisa ga c, searching pake cgi-bin tanpa milih mode nya?

  14. indz says:

    Salam kenal kembali,
    Untuk penggunaan MapServer lebih mudah, dapat digunakan framework yang sudah ada agar kita tidak perlu mendefinisikan perintah cgi-bin, seperti chameleon, atau phpMapScript (PHPMapscript lebih preferable). Dalam phpMapScript, pencarian dapat dilakukan dengan menggunakan fungsi PHPMapScript queryByAttribute. Untuk aplikasi MapServer yang sudah cukup lengkap, http://pmapper.org/ saya rekomendasikan. Semoga membantu :) .

  15. phaichal says:

    nah itu masalahnya, kmrn nyoba2 pake pmapper, tapi ga mudeng2….
    hehe…. skr searchingnya masih ganti2 mode dulu….
    tapi layernya juga harus d pilih ya….
    jadi agak ribet juga…
    but, makasi ya?
    he….

  16. plato says:

    punya gambaran bagaimana cara menyelesaikan tugas akhir yang judulnya simulasi daerah banjir dengan gis

  17. indz says:

    @plato:
    simulasi pergerakan aliran banjir bisa disimulasikan lebih mudah menggunakan ArcGis.asalkan ada data dari waktu ke waktu variabel yang mempengaruhi banjir dan kontur wilayahnya.

  18. kin says:

    oke aku gabung bareng untuk belajar mapserver?program yang mendukung apa saja?

  19. indz says:

    Untuk instalasi mapserver, cukup dengan install server mapserver dan dicoba di browser. Demikian maksudnya?

  20. putri says:

    ass… saya lagi nyob MS4W neh pake PHP dan MySQL, minta artikel n masukannya aja yah… nanti kalo saya ada pertanyaan tolong kirim via email aja… kalo sukses … mau dijadiin TA neh..
    Syukran.. Wass

  21. sisil says:

    Hi, eku baru mengenal GIS dan sekarang lagi TA bikin Rute terpenden menuju tempat wisata…
    Disaranin pembimbingnya sih pake map server.
    Tapi masih blom mudeng.
    dong-dong emang neh, mohon bimbingannya ya!!!

  22. afadill says:

    Saat ini saya sedang tertarik untuk mendalami webgis dengan MapServer. Jadi masih butuh bantuan untuk teman diskusi..

  23. indz says:

    For all:
    Bagi rekan-rekan yang ingin diskusi, silakan kirim email langsung ke indriani.nh [at] gmail [dot] com yah. Thanks for participating :)

  24. Fuad says:

    Asslmkm.
    Mbak indz, mau tanya dong…
    konfigurasi mapserver itu gmn ya???
    saya kok gagal terus ya!!!
    saya pake P.mapper…
    minta tutorialnya dong…
    Masih baru banget nih…
    ga mudeng kalo baca di manualnya…

  25. indz says:

    To Fuad:
    Waalaikumsalam. Baik, baru saja saya publish artikel baru tentang penggunaan awal mapserver di halaman ini, semoga membantu.
    -bhindz.net

  26. Fuad says:

    Iya, makasih Mbak… :D
    saya udah selesai kok P.Mappernya…
    Alhamdulillah Semua Fungsi P.mapper udah bisa jalan termasuk search by, identifier, pop up, print dll.
    Nah, sekarang masalahnya di minta menyatukan P.mapper ke xampp

    masih belum ketemu solusinya…
    Ada yg punya solusi?

  27. indz says:

    @Fuad:
    Untuk konfigurasi mapserver ke xampp, kita perlu mengkopi beberapa library mapserver ke xampp. Untuk tutorial lengkapnya dapat dilihat di link berikut:
    http://www.maptools.org/ms4w/index.phtml?page=README_INSTALL.html#i-installing-the-ms4w-mapserver-binaries-in-other-environments

  28. Fuad says:

    Hallo Mbak…
    Biasa… Langganan…
    Ini Mbak, saya mau melakukan Join Mysql-SHP di P.mapper kok gagal terus ya… saya ngikutin contoh ini: (user, pasword, Field yg mau dijoin udah disesuain). Yang saya bingung itu di bagian
    DATA “/var/www/map/dati/mysqljointest”
    Data itu maksudnya apa ya? apa data SHP?? Makasih Ya mbak!!!

    LAYER
    NAME “mysqltest”
    STATUS ON
    DATA “/var/www/map/dati/mysqljointest”
    TYPE POLYGON
    TEMPLATE void
    METADATA
    “DESCRIPTION” “mysqljointtest”
    “RESULT_FIELDS” “ED,DESCRIZIONE”
    “RESULT_HEADERS” “Descrizione,MySQL”
    “RESULT_JOIN” “mysql://:@localhost/||@ED@0@DESCRIZIONE||ED||1″
    END
    CLASS
    NAME “mysqltest”
    STYLE
    COLOR 255 0 0
    OUTLINECOLOR 0 0 0
    END
    END
    END

  29. indz says:

    @Fuad: wah pertanyaannya sudah sangat teknis dan merambah ke database, saya harus googling dulu buat bisa jawab pertanyaan bapak :D .
    Setahu saya, kalau DATA di cakupan tag LAYER, apalagi punya tag TYPE POLYGON, berarti data yang dimaksud adalah data GIS yaitu shp.

  30. s'tev says:

    Mba mo tanya nih, skrg saya lagi ngebuat web gis nih dengan menggunakan arcview 3.3
    Pertanyaan saya bisa ga sih kita nampilin hotlink lewat mapscript…
    Soalnya saya mau nampilin database dengan tooltip ketika user milih layer point dari map yang telah saya buat…
    Terima kasih…

  31. brians says:

    hallo …
    aku lagi tugas akhir pake mapserver nih
    pingin tanya,
    untuk koneksi ke databasenya bagusnya pake posgresql apa mysql,
    soalnya postgre kan ada postgisnya,
    trus ajarin dong bwt querynya biar klo klik di peta muncul data atributnya….
    makasih banyak

  32. belf says:

    alo..

    mau nanya..saya masih sangat awam dengan mapserver..saya hanya berkutat dengan arcgis dan arcview dan mau mencoba mapserver.
    udh nanya2 ama dosen,beliau saranin paling gampang pake ms4w+pmapper..

    nah,saya sudah install ms4w dan pmappernya..
    setelah itu gmn y mbak..??

    apa kita mengganti tampilan demo nya..??

    caranya gmn ya..??

    sebagai pertimbangan,saya sudah punya data .shp nya..

    trims..

  33. gis_archives says:

    mantaf nih tutorialnya, bisa private ga nihh.. heheheh

  34. bagiodoank says:

    bantu aku tuk belajar ya mbak

  35. irwan says:

    ass.
    pa kabar semua?
    saya ada kesuliatan di sekitar mapserver, gimana cara buat query?
    lalu yang baik pake dtabasenya apa yah?
    saya lagi bikin TA seputar GIS, mohon bantuanya.
    terimakasih.

  36. indz says:

    Hi all! Salam.

    @s’tev, saya sendiri belum pernah mencoba arcview 3.3, yang saya coba arcinfo 9.2 dan belum tahu keterkaitan arcinfo dengan mapscript. Untuk hotlink di arcinfo, bisa diberikan di data shapefile yang mengacu ke webgis mapserver melalui fungsi hyperlink di arcinfo.

    @brians & @irwan: saya belum pernah mencoba baik mysql maupun postgresql, jika ada infonya silakan share ya :) .
    Untuk query di phpMapscript, berikut contoh script sederhana untuk meng-query lokasi:

    $layer->open();
    @$layer->queryByAttributes($namaAttr, “(‘[".$namaAttr."]‘ = ‘”.$namaLokasiYangDicari.”‘)”, MS_MULTIPLE);
    $layer->close();

    @belf: untuk mengubah data pada pmapper, kita bisa mengotak-atik shapefile pada C:\ms4w\apps\pmapper\pmapper_demodata dan konfigurasi pada file .map di C:\ms4w\apps\pmapper\pmapper-3.2.0\config\default\pmapper_demo.map

    @gis_archives & @bagiodoank: saya bantu sebisa saya ya.

    Thanks all!

  37. dplato says:

    kalo simulasi menggunakan mapserver bisa nggak? kalo bisa beri contoh dong…

  38. dplato says:

    maksudnya simulasi banjir..

  39. indz says:

    @plato:
    repost comment yah :D
    dulu rasanya udah saya jawab sbb:
    simulasi pergerakan aliran banjir bisa disimulasikan lebih mudah menggunakan ArcGis.asalkan ada data dari waktu ke waktu variabel yang mempengaruhi banjir dan kontur wilayahnya.

  40. mimi says:

    salam..hye editor…saya mau nanya..kamu tau nggak pengunaan map info yang fungsinya untuk digitalized peta dlm GIS?

  41. ami says:

    haloo ndrii.. nyampe juga ke sini hasil gugling2 nyari info ttg map server n arcgis server.. lg nyari perbandingan kelebihan n kekurangan dua2nya nih.. arcgis server teknologi baru sih ya.. jd masih jarang artikel ttg itu..
    bisa bantu ndri?? :D

  42. Gilang Magrial Budi Kharisma says:

    mba indri minta bantuannya yah,, sy newbie jg ni.
    lagi mau buat TA ttg web based dgn mapserver ni,tp topiknya blm dpt mau buat apa. terlebih dahulu pengen tau cara pengunaan mapserver, coz sy udah donlot mapserver 5.6.1 trs ms-tilecache-ms4w-3.0beta10 sumber http://dl.maptools.org/dl/ms4w/ sama chameleon_ms4w-2.6.0rc1 tp gag ngerti cara gunainnya, coz apachenya diinstall kga mau. ngikutin tutor2 yg lain kga ngerti coz saya donlot versi yg beda dr para tutor,hbs mrk publishnya thn 2008an smw jd msh pke versi lama.
    untuk TA saya sih pengen bkin lingkup yg kecil aja dlu, semisal ttg peta kota bandung tmpat saya tinggal, mungkin topiknya yg bgs apa yah mba,??ttg pariwisatanya mgkin udh byk jd ada yg lain ga?oh iya 1 lagi,,klo GIS ini ntar bisa kita jadikan bwt pelacakan GPS gag mba,?makasih sebelumnya, ditunggu balesannya. via email jg klo bisa.

  43. indz says:

    @mimi: saya belum pernah pakai mapinfo tp harusnya konsepnya sama dengan arcGIS
    @amee: haha nyampe sini juga me, wah arcgis bikin versi web nya juga ya, blm pernah coba euy me, serius mau pake arcgis? itu kan muahal *kalo mw pake yang asli* hehehe
    @Gilang: kl mau pake hrs ada apache nya, jadi harus sukses dulu installasinya. Dulu saya juga pernah pake mapserver yang .exe, install nya bisa di folder mana aja yang kita mau, tapi it doesn’t work. Jadi pakai yang hanya meng-ekstrak file zip mapserver aja, dan ikutin cara di artikel yang ini. Topik TA? coba cari minat kamu dulu mau ke mana, jangan terbatasi oleh teknologi.

  44. rush says:

    ass..

    mba saya laraz..

    saat ini sedang mngerjakn ta gis ttg “penentuan lokasi pembangunan lapangn futsal mnggunakan AHP-GIS”

    yg saya mau tanyakan,.

    1. bagaimana cara mnambah form baru untuk menampilkan analisa saya trsebut..d pmapper yg asli dsitu ad form downoal,help,print..saya ingin mngganti form” trsebut dgn form analisa saya..

    2. bagaimana cara mngganti search d pmapper..

    saya mohon bantuannya y mba..

    :) terimakasih

  45. BRam says:

    mbak indri, saya punya kasus gini

    saya pake template html untuk melayout peta berbasis mapserver di web (map server web object)

    misalnya gini

    Template mapserver

    Template Peta& Scalebar
    Host: [host], Port [port], Titik pusat [center]
    Peta

    Scalebar

    baris script dan adalah mapserver tag yang nanti merujuk ke hasil render yang dilakukan oleh mapfile (*map) yang disimpan dalam suatu temporary folder,

    nah ketika file html tsb dieksekusi, petanya (hasil render mapserver) tidak muncul di browser/tidak terender, sedangkan komponen yang ditulis pake script html muncul, ketika saya cek ke folder temp file petanya (hasil eksekusi map file) ada,
    saya sudah coba di bebrapa browser hasilnya sama,

    kira2 sebabnya apa ya mbak? terimakasih

  46. sedekh says:

    Mas saya mau nanya, bagaimana buat database yang terpisah di mapserver…..klu di appserv kan di c:/appserv/mysql/data/namafolder…atau kita bisa buat di PhpMyadmin kan mas….

    klu di mapserver, bagaimana mas….bls ke E-mail saya ya mas….

    Please mas saya Skripsi saya tentang GIS juga!!

  47. inne says:

    saya kusilatan menggunakan mapserver di ubuntu…
    saya sudah menginstall mapserver…tapi kesulitan saya yaitu bagaimana pertama kali memulainya…saya harus buka apa…untuk membuat aplikasinya…
    mohon bantuannya…thx….

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>