Graham Dumpleton
grahamd at dscpl.com.au
Fri Dec 9 23:17:00 EST 2005
Which version of mod_python are you using? On 08/12/2005, at 12:14 AM, Sebastjan Trepca wrote: > Hi, > > I'm writing a proxy handler which makes a request to a different page > and retrieves its content and headers. This is the source: > > import urllib2 > from mod_python import util > > def handler(req): > req.headers_out.clear() > f = util.FieldStorage(req) > url = f.get('url',None) > if(url): > url=url.split('?') > if(len(url)>1): > u = url[0] > p = url[1] > ureq = urllib2.Request(u,p) > else: > u = url[0] > ureq = urllib2.Request(u) > for h in req.headers_in: > ureq.add_header(h,req.headers_in[h]) > r = urllib2.urlopen(ureq) > for h in r.headers: > req.headers_out[h]=r.headers[h] > data = r.read() In case you are using mod_python 2.7.X, add at this point: req.send_http_header() > req.write(data) > return 0#-2 doesn't help either > return 0 Will not make a difference, but don't return 0/2, use apache.OK/ apache.DONE instead. Using literal integer values is bad programming practice. > But this seems to have problems with headers, I get back basic headers > from my Apache server, which is wrong of course. > Any ideas why is this happening? Graham
|