User Tools

Site Tools


tecnica:gps_cartografia_gis:mapserver_fgs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tecnica:gps_cartografia_gis:mapserver_fgs [2009/06/22 11:03] niccolotecnica:gps_cartografia_gis:mapserver_fgs [2009/10/20 11:28] (current) niccolo
Line 18: Line 18:
   * postgis-lib:1.3.5   * postgis-lib:1.3.5
  
-In questo modo è possibile installare versioni recenti del software (GDAL 1.6, MapServer 5.4, PostGIS 1.3.5) anche su distribuzioni orribili come **CentOS 4.5**!+In questo modo è possibile installare versioni recenti del software (MapServer 5.4, GDAL 1.6, PostGIS 1.3.5) anche su distribuzioni **obsolete e orribili come CentOS 4.5**. Purtroppo il pacchetto è disponibile solo per **architettura i386**.
  
 +===== Installazione =====
 +
 +Si scarica il pacchetto **fgs-mapserver_extended**, lo si rende eseguibile e lo si esegue.
 +
 +L'installazione conviene farla come **utente non privilegiato**, altrimenti la configurazione di PostgreSQL fallisce (non può eseguire ''initdb'' come ''root''). Inoltre l'utente che esegue l'installazione sarà l'amministratore di PostgreSQL e il proprietario dei processi in esecuzione.
 +
 +Supponiamo di creare un utente ad-hoc di nome **fgs**, se vogliamo installare tutto il software nella directory **''/opt/fgs/''**, bisogna che la directory ''/opt'' sia scrivibile dall'utente durante l'installazione.
 +
 +Per evitare conflitti con il software già installato è necessario utilizzare **porte non standard** per alcuni servizi (Apache, PostgreSQL).
 +
 +<code>
 +*      *** Apache installation ***
 +* Selecting TCP port... Example: 80, 8080, 8000
 +? What TCP port do you want to use [80] : 8080
 ++ Port selected : '8080'
 +* You can start apache with : fgs start apache
 +</code>
 +
 +Per utilizzare il software installato sotto **''/opt/fgs/''** e per avviare i servizi si deve eseguire:
 +
 +<code>
 +. /opt/fgs/setenv.sh
 +fgs start apache
 +fgs start pgsql
 +</code>
 +
 +Dopo aver eseguito ''setenv.sh'' è possibile utilizzare anche i tool da riga di comando come **''ogrinfo''** ecc. Si consiglia di aggiungere il ''setenv.sh'' al profilo utente:
 +<code>
 +echo ". /opt/fgs/setenv.sh" >> ~/.bashrc
 +</code>
 +
 +Per avviare tutti i servizi al boot di sistema si modifica ''rc.local'' aggiungendo:
 +
 +<file>
 +su fgs -c "( . /opt/fgs/setenv.sh ; fgs start )"
 +</file>
 +
 +FIXME Sarebbe opportuno esegure ''fgs stop'' allo shutdown.
 +
 +==== Disabilitare un servizio installato ====
 +
 +Per disabilitare un servizio senza disinstallarlo - ad esempio per disabilitare l'avvio automatico di PostgreSQL - si può intervenire direttamente sullo script di avvio **''/opt/fgs/etc/init.d/pgsql''**, aggiungendo un comando **''exit''** al suo inizio.
 +
 +===== Installazione moduli aggiuntivi =====
 +
 +Il pacchetto FGS comprende numerosi moduli aggiuntivi non installati dal pacchetto principale. L'elenco è visibile direttamente nella [[http://dl.maptools.org/dl/fgs/releases/9.5/modules/|directory di download]] (specifica per la versoine del pacchetto principale).
 +
 +Come esempio vogliamo installare il plugin **Client Oracle (OCI)** della libreria GDAL. Dobbiamo specificare il numero di versione, altrimenti rischiamo di installare il plugin per Oracle 11 invece che per la versione 10:
 +
 +<code>
 +fgs install gdal-base-1.6.1-oci:10.2.0.4-1 http://dl.maptools.org/dl/fgs/releases/9.5/modules
 +</code>
 +
 +===== Modulo Apache =====
 +
 +La configurazione FGS si trova in **''/opt/fgs/etc/fgs/pkgs/apache-base/apache.conf''**:
 +
 +<file>
 +PORT=8080
 +USER='apache'
 +GROUP='apache'
 +</file>
 +
 +I parametri **''USER''** e **''GROUP''** vengono impostati solo se ''fgs start'' viene eseguito da root, in tal caso apache gira con il suo utente. Altrimenti gira a nome dell'utente fgs.
 +
 +Il file di configurazione usato è **''/opt/fgs/www/conf/live.httpd.conf''** (viene sovrascritto ad ogni avvio di Apache), questi i parametri importanti:
 +
 +<file>
 +ServerRoot "/work/fgs/www"
 +Listen 8080
 +User apache
 +Group apache
 +DocumentRoot "/work/fgs/www/htdocs"
 +ErrorLog "logs/error_log"
 +CustomLog "logs/access_log" common
 +</file>
 +
 +La configurazione del PHP è in **''/opt/fgs/www/conf/php5.ini''** ma viene sovrascritta ad ogni avvio di Apache con il contenuto di **''/opt/fgs/www/conf/php5.ini.template''**.
 +
 +Le estensioni PHP **non vengono caricate automaticamente** (come in Debian), ma vanno aggiunte a mano:
 +
 +<file>
 +extension=curl.so
 +extension=php_mapscript.so
 +</file>
 +
 +Ad esempio l'estensione **curl** è necessaria per chiamare ''**fopen($url)**'', altrimenti si ottiene l'errore:
 +
 +<code>
 +Notice: fopen() [function.fopen]: Unable to find the wrapper "http"
 +    - did you forget to enable it when you configured PHP? in /var/www/fopen_test.php on line 54
 +Warning: fopen(http://host/) [function.fopen]: failed to open stream:
 +    No such file or directory in /var/www/fopen_test.php on line 54
 +</code>
tecnica/gps_cartografia_gis/mapserver_fgs.1245661437.txt.gz · Last modified: 2009/06/22 11:03 by niccolo