#1 Thu 18 June 2009 13:41
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
mapserver mapinfo openlayers affichage couche WFS proxy
bonjour
je m'aide du tutoriel suivant:
http://openlayers.org/dev/examples/wfs.html
où jessaie d'integrer le layer wfs provenant de l'exterieur dans mon site :
Code:
layer = new OpenLayers.Layer.WFS( "Owl Survey",
"http://www.bsc-eoc.org/cgi-bin/bsc_ows.asp?",
{typename: "OWLS", maxfeatures: 10},
{ featureClass: OpenLayers.Feature.WFS});et openlayers ne veut pas y acceder vu qu'il y a une sécurité m'interdisant de charger la couche WFS.
Pour y remedier il parait qu'il faut bidouiller un proxy ou quelque chose comme ca mais je ne sais pas du tout comment faire !
pourriez-vous maider ?
ps: je ne connais pas grand chose en configuration d'Apache
merci d'avance
Dernière modification par icadedt (Thu 18 June 2009 13:46)
Hors ligne
#2 Thu 18 June 2009 14:17
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#3 Thu 18 June 2009 14:20
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: mapserver mapinfo openlayers affichage couche WFS proxy
bonjour,
http://trac.openlayers.org/wiki/Frequen … #ProxyHost
Y.
faut-il renseigner le parametre URL ?
OpenLayers.ProxyHost = "/cgi-bin/proxy.cgi?url=";
Hors ligne
#4 Thu 18 June 2009 14:33
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Bonjour,
Non OpenLayers va utiliser l'url définie par OpenLayers.ProxyHost pour rajouter l'url que tu as définies dans ton objet layers WFS.
Cela devrait donner des appels http://monDomain/cgi-bin/proxy.cgi?url=http://www.bsc-eoc.org/cgi-bin/bsc_ows.asp?... mais c'est bien OpenLayers qui va gérer cela.
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#5 Thu 18 June 2009 15:37
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: mapserver mapinfo openlayers affichage couche WFS proxy
je suppose que le fichier proxy.cgi doit etre mis quelque part mais où ?
http://trac.openlayers.org/browser/trun … /proxy.cgi
Hors ligne
#6 Thu 18 June 2009 15:50
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Bonjour,
Comme indiqué dans la doc : dans le répertoire cgi-bin d'apache/ Sous linux (Debian) il est là : /usr/lib/cgi-bin/ sous Mandriva il était là : /var/www/cgi-bin/
La configuration d'Apache l'indique (visible avec un phpinfo() par exemple).
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#7 Thu 18 June 2009 15:54
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Bonjour,
Comme indiqué dans la doc : dans le répertoire cgi-bin d'apache/ Sous linux (Debian) il est là : /usr/lib/cgi-bin/ sous Mandriva il était là : /var/www/cgi-bin/
La configuration d'Apache l'indique (visible avec un phpinfo() par exemple).
Y.
Aïe c'est pas compatible WINDOWS ????
ou alors ici ?:
Code:
C:\ms4w\Apache\cgi-bin
Dernière modification par icadedt (Thu 18 June 2009 16:01)
Hors ligne
#8 Thu 18 June 2009 16:04
Re: mapserver mapinfo openlayers affichage couche WFS proxy
voilà c'est ca :
Code:
C:\ms4w\Apache\cgi-bin
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#9 Fri 19 June 2009 16:43
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: mapserver mapinfo openlayers affichage couche WFS proxy
firefox me renvoie le message d'erreur suivant:
http://www.flickr.com/photos/39689320@N … 5/sizes/o/
apparemment il y aurait un probleme de syntaxe au niveau du fichier proxy.cgi. pourquoi, je ne sais pas
le fichier proxy.cgi que j'ai mis dans le répertoire:
C:\ms4w\Apache\cgi-bin
le fichier proxy.cgi (j'ai rajouté 'www.bsc-eoc.org' dans la variable array allowedHosts) :
Code:
#!/usr/bin/env python
"""This is a blind proxy that we use to get around browser
restrictions
that prevent the Javascript from loading pages not on the
same server as the Javascript. This
has several problems: it's less
efficient, it might break some sites, and it's a security risk
because
people can use this proxy to browse the web and possibly do bad stuff
with it. It only
loads pages via http and https, but it can load any
content type. It supports GET and POST
requests."""
import urllib2
import cgi
import sys, os
# Designed to prevent Open Proxy type
stuff.
allowedHosts = [ 'www.bsc-eoc.org', 'www.openlayers.org', 'openlayers.org',
'labs.metacarta.com', 'world.freemap.in',
'prototype.openmnnd.org',
'geo.openplans.org',
'sigma.openplans.org',
'www.openstreetmap.org']
method = os.environ["REQUEST_METHOD"]
if method == "POST":
qs =
os.environ["QUERY_STRING"]
d = cgi.parse_qs(qs)
if d.has_key("url"):
url =
d["url"][0]
else:
url = "http://www.openlayers.org"
else:
fs =
cgi.FieldStorage()
url = fs.getvalue('url', "http://www.openlayers.org")
try:
host =
url.split("/")[2]
if allowedHosts and not host in allowedHosts:
print "Status: 502
Bad Gateway"
print "Content-Type: text/plain"
print
print "This proxy
does not allow you to access that location (%s)." % (host,)
print
print
os.environ
elif url.startswith("http://") or url.startswith("https://"):
if
method == "POST":
length = int(os.environ["CONTENT_LENGTH"])
headers =
{"Content-Type": os.environ["CONTENT_TYPE"]}
body = sys.stdin.read(length)
r = urllib2.Request(url, body, headers)
y = urllib2.urlopen(r)
else:
y = urllib2.urlopen(url)
# print content type header
i =
y.info()
if i.has_key("Content-Type"):
print "Content-Type: %s" %
(i["Content-Type"])
else:
print "Content-Type: text/plain"
print
print y.read()
y.close()
else:
print "Content-Type:
text/plain"
print
print "Illegal request."
except Exception, E:
print
"Status: 500 Unexpected Error"
print "Content-Type: text/plain"
print
print "Some
unexpected error occurred. Error text was:", Epour info j'ai configuré OpenLayers.ProxyHost comme ca:
Code:
OpenLayers.ProxyHost="http://localhost:8080/proxy.cgi?url=";
Dernière modification par icadedt (Fri 19 June 2009 17:11)
Hors ligne
#10 Fri 19 June 2009 16:58
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Bonjour,
Peux tu poster le message sur le forum ? Je n'ai pas de compte flickr et pas envie d'en créer un ![]()
Merci,
Y.
Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !! - GeoRezo vous aide ? Aidez GeoRezo !
Hors ligne
#11 Fri 19 June 2009 17:12
- icadedt
- Participant assidu
- Lieu: ici et là
- Date d'inscription: 21 Jul 2006
- Messages: 478
Re: mapserver mapinfo openlayers affichage couche WFS proxy
Bonjour,
Peux tu poster le message sur le forum ? Je n'ai pas de compte flickr et pas envie d'en créer un
Merci,
Y.
le voici en piece jointe
je rappelle que je suis sur windows . est ce que ca a une incidence ?
Dernière modification par icadedt (Fri 19 June 2009 17:30)
Hors ligne


