Rewrite URL agar lebih cantik pada MapServer

Ceritanya, link untuk menghasilkan gambar dari MS4W, MapServer for Windows, dengan tile ala google, yang biasa digunakan pada WebGIS adalah sangat panjang dan njelimet

Contohnya adalah sebagai berikut jika menggunakan Leaflet:


L.tileLayer('http://localhost:81/{id}{x} {y} {z}', {
maxZoom: 18,
id: 'cgi-bin/mapserv.exe?map=/ms4w/apps/belajar/kampar04/kampar.map&mode=tile&layers=jalan&tilemode=gmap&tile='
}).addTo(map);

Padahal, pada contoh yang diberikan oleh https://leanpub.com/leaflet-tips-and-tricks/read , tile server yang lain sangat SEO friendly format tilenya.

Solusi agar terlihat indah adalah tentu dengan menggunakan mod rewrite pada apache.

Berikut settingan .htaccess saya,


RewriteRule ^kampar/(.*)/(.*)/(.*)\.png$ "/cgi-bin/mapserv.exe?map=/ms4w/apps/belajar/kampar04/kampar.map&mode=tile&layers=jalan&tilemode=gmap&tile=$2 $3 $1" [L]

yang artinya kira-kira seperti ini:

kalo ada yang mengakses /kampar/apapun/apapun/apapun.png, maka apache akan me-rewrite ke /cgi-bin yang njelimet itu …

Dengan begini, tile kita di Leaflet akan lebih ciamik dan gampang dibaca:


L.tileLayer('http://localhost:81/{id}/{z}/{x}/{y}.png', {
maxZoom: 18,
id: 'kampar'
}).addTo(map);

Nah, tentu dengan begini akan lebih mudah dan cantik URL untuk gambarnya.

Berikut screenshot sebagai barang bukti …

tile kampar leaflet

Terlihat pada skimcot bahwa gambarnya sudah bagus dan SEO friendly

dan hasilnya juga sama, sila dilihat di screenshot berikut:

tile kampar rewrite sidebyside

yang di bawah adalah setelah di rewrite, yang di atas adalah yang puanjang

Iklan