[Gfoss] riflessioni su pubblicazione WFS con apache e mapserver (e client qGis)

Alessandro Pasotti apasotti a gmail.com
Mar 18 Nov 2014 17:04:51 CET


Il 18 novembre 2014 16:51, francesco marucci
<francesco.marucci a gmail.com> ha scritto:
> gentile lista,
> vorrei condividere con voi tutti e tutte gioie e dolori di alcune ore

[...]

> premetto che ho notato un comportamento secondo me "anomalo" di qGis
> (versione 2.4 win32 da osgeo4w): quando richiamo un servizio WFS da un
> determinato end point, la costruzione delle successive richieste (dopo la
> GetCapabilities) non avviene con i relativi indirizzi presenti nelle online
> resources delle capabilities, ma qGis utilizza l'indirizzo usato per
> richiamare il servizio (l'end point che inserisce l'utente, per intenderci).
> secondo me questo è sbagliato, se c'è l'online resource perchè non usarlo?

Credo che dovresti aprire un ticket.

> poi questo comportamento mi ha costretto ad andare avanti con la mia
> ricerca, perchè anche se non elegantissimo, potevo mascherare solamente
> l'end point iniziale del mio servizio, mantenendo l'indirizzo con percorso
> al .map per le richieste successive "trasparenti" per l'utente.
>
> quindi mi rimbocco le maniche e vado avanti:
> leggo dalla documentazione di Mapserver (in realtà la pagina sul WFS mi
> rimanda a quella del WMS):
> http://mapserver.org/ogc/wms_server.html#online-resource-wms
> tutti i vari metodi per "nascondere" il percorso completo al .map.
>
> quindi nella mia bella root del web server mi sono creato la cartella "wfs",
> ho applicato tutte le mie brave regole di rewrite in modo da richiamare da
> qGis l'indirizzo (che è l'obbiettivo che voglio raggiungere):
>
> http://www.miodominio.it/wfs
>
>
> vedo dai log di Apache richiesta in GET proveniente da qGis per la
> GetCapabilites:
>
> 192.168.1.82 - - [30/Oct/2014:12:55:09 +0100] "GET
> /wfs?REQUEST=GetCapabilities&SERVICE=WFS&VERSION=1.0.0 HTTP/1.1" 301 647 "-"
> "-"
> 192.168.1.82 - - [30/Oct/2014:12:55:09 +0100] "GET
> /wfs/?REQUEST=GetCapabilities&SERVICE=WFS&VERSION=1.0.0 HTTP/1.1" 200 3387
> "-" "-"
>

Qui non ti seguo, se ho capito bene hai usato mod_rewrite, in tal caso
invece di usare un redirect avresti potuto semplicemente riscrivere
l'indirizzo per richiamare il cgi corretto, quindi senza usare il flag
[R] e di conseguenza senza mandare un header 301 al client ma
servendogli direttamente la pietanza.

-- 
Alessandro Pasotti
w3:   www.itopen.it


Maggiori informazioni sulla lista Gfoss