1 508
contributi
Nessun oggetto della modifica |
(modificata gerarchia titoli) |
||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Debian Sarge 3.1 <br> Debian Etch 4.0|}} | {{Versioni compatibili|Debian Sarge 3.1 <br> Debian Etch 4.0|}} | ||
=Introduzione= | == Introduzione == | ||
Mapserver è un software che fornisce mappe ed altri dati di tipo GIS. Questa applicazione viene distribuita unitamente ad una estensione di PHP chiamata '''mapscript''' che permette di accedere alle funzioni di MapServer direttamente dal codice PHP. Purtroppo il relativo pacchetto Debian, a causa di una incompatibilità delle librerie relative alla gestione delle REGEXP da parte di MapServer e del sistema, non contiene questa estensione. | Mapserver è un software che fornisce mappe ed altri dati di tipo GIS. Questa applicazione viene distribuita unitamente ad una estensione di PHP chiamata '''mapscript''' che permette di accedere alle funzioni di MapServer direttamente dal codice PHP. Purtroppo il relativo pacchetto Debian, a causa di una incompatibilità delle librerie relative alla gestione delle REGEXP da parte di MapServer e del sistema, non contiene questa estensione. | ||
Questa guida spiega come ottenere mapscript a dispetto di questo inconveniente. | Questa guida spiega come ottenere mapscript a dispetto di questo inconveniente. | ||
Riga 8: | Riga 8: | ||
Happy Hacking! | Happy Hacking! | ||
=Installazione ambiente LAMP= | == Installazione ambiente LAMP == | ||
Si veda a questo proposito la guida [[LAMP: Linux, Apache, MySQL e PHP]]. | Si veda a questo proposito la guida [[LAMP: Linux, Apache, MySQL e PHP]]. | ||
Per brevità, riporto i comandi base per l'installazione dell'ambiente LAMP, rimandandovi al documento di cui sopra per la loro (eventuale) configurazione: | Per brevità, riporto i comandi base per l'installazione dell'ambiente LAMP, rimandandovi al documento di cui sopra per la loro (eventuale) configurazione: | ||
<pre># apt-get install apache phpmyadmin libapache-mod-php4 php4 php4-mysql mysql-server-4.1</pre> | <pre># apt-get install apache phpmyadmin libapache-mod-php4 php4 php4-mysql mysql-server-4.1</pre> | ||
=Installazione di MapServer (CGI)= | == Installazione di MapServer (CGI) == | ||
È sufficiente usare il comando: | È sufficiente usare il comando: | ||
<pre># apt-get install cgi-mapserver</pre> | <pre># apt-get install cgi-mapserver</pre> | ||
Riga 19: | Riga 19: | ||
<pre>No query information to decode. QUERY_STRING is set, but empty.</pre> | <pre>No query information to decode. QUERY_STRING is set, but empty.</pre> | ||
=Installare un'applicazione mapserver di esempio= | == Installare un'applicazione mapserver di esempio == | ||
Possiamo installare un'applicazione di esempio per vedere le potenzialità di MapServer e testarne il buon funzionamento. Scarichiamo il seguente file: | Possiamo installare un'applicazione di esempio per vedere le potenzialità di MapServer e testarne il buon funzionamento. Scarichiamo il seguente file: | ||
<pre># wget http://maps.dnr.state.mn.us/mapserver_demos/workshop.zip</pre> | <pre># wget http://maps.dnr.state.mn.us/mapserver_demos/workshop.zip</pre> | ||
decomprimiamolo e spostiamolo all'interno della DocumentRoot di Apache ( <code>/var/www</code> ) | decomprimiamolo e spostiamolo all'interno della DocumentRoot di Apache ( <code>/var/www</code> ) | ||
==Configurazione e permessi== | === Configurazione e permessi === | ||
Dobbiamo configurare l'applicazione ed i permessi su una directory prima di poter procedere. | Dobbiamo configurare l'applicazione ed i permessi su una directory prima di poter procedere. | ||
* creiamo la directory <code>tmp</code> nella DocumentRoot: | * creiamo la directory <code>tmp</code> nella DocumentRoot: | ||
Riga 40: | Riga 40: | ||
<input type="hidden" name="map_web_imageurl" value="/tmp/"></pre> | <input type="hidden" name="map_web_imageurl" value="/tmp/"></pre> | ||
=Preparare l'installazione di MapScript= | == Preparare l'installazione di MapScript == | ||
Assicuriamoci di avere un repository per i pacchetti sorgenti nel nostro <code>etc/apt/sources.list</code> dopodiché: | Assicuriamoci di avere un repository per i pacchetti sorgenti nel nostro <code>etc/apt/sources.list</code> dopodiché: | ||
<pre># apt-get -s build-dep php4 > builddep-php4-packages | <pre># apt-get -s build-dep php4 > builddep-php4-packages | ||
Riga 51: | Riga 51: | ||
Non preoccupiamoci se dobbiamo sovrascrivere alcune dipendenze, facciamolo tranquillamente di volta in volta, assecondando APT. | Non preoccupiamoci se dobbiamo sovrascrivere alcune dipendenze, facciamolo tranquillamente di volta in volta, assecondando APT. | ||
==Compilazione di PHP4== | === Compilazione di PHP4 === | ||
Ora logghiamoci con il nostro utente normale e: | Ora logghiamoci con il nostro utente normale e: | ||
<pre>$ apt-get source php4 | <pre>$ apt-get source php4 | ||
Riga 64: | Riga 64: | ||
<pre>$ cp apache-build/regex/.libs/*.o regex/</pre> | <pre>$ cp apache-build/regex/.libs/*.o regex/</pre> | ||
==Compilazione di Mapserver== | === Compilazione di Mapserver === | ||
Sempre dalla nostra home impartiamo i comandi: | Sempre dalla nostra home impartiamo i comandi: | ||
<pre>$ apt-get source mapserver | <pre>$ apt-get source mapserver | ||
Riga 84: | Riga 84: | ||
Ora dovrebbe essere tutto pronto: non ci resta che testare il funzionamento del modulo. | Ora dovrebbe essere tutto pronto: non ci resta che testare il funzionamento del modulo. | ||
=Testare mapscript= | == Testare mapscript == | ||
Creiamo il file <code>map.php</code> all'interno della DocumentRoot di Apache e inseriamo al suo interno queste istruzioni: | Creiamo il file <code>map.php</code> all'interno della DocumentRoot di Apache e inseriamo al suo interno queste istruzioni: | ||
<pre><?php | <pre><?php | ||
Riga 92: | Riga 92: | ||
Ora puntiamo il nostro browser all'indirizzo http://localhost/map.php. dovrebbe comparire qualcosa di simile a [[immagine:mapscript_test.png|thumb|center|Informazioni del modulo MapScript]] | Ora puntiamo il nostro browser all'indirizzo http://localhost/map.php. dovrebbe comparire qualcosa di simile a [[immagine:mapscript_test.png|thumb|center|Informazioni del modulo MapScript]] | ||
=References= | == References == | ||
* [http://nona.net/article/linux/mapscript_compile/ How to compile MapScript on Debian Sarge] | * [http://nona.net/article/linux/mapscript_compile/ How to compile MapScript on Debian Sarge] | ||
* [[LAMP: Linux, Apache, MySQL e PHP]] | * [[LAMP: Linux, Apache, MySQL e PHP]] |
contributi