Jim Steil
jim at qlf.com
Thu Jan 26 16:55:59 EST 2006
I have what I think is a similar problem. My app works just fine with IE, but when I try to get at it with FireFox, I see my HTML source instead of my app. I'm really new to all this, so it may not be related. But, I'm watching for a resolution as I'm hoping it will clue me in to what I'm doing wrong as well. It happens to me with Firefox 1.5. -Jim Jim Gallacher wrote: > David Worley wrote: >> To clarify further: >> >> http://localhost/some/file/system/directory/style.css is only ever >> called from an HTML file, via a <link> tag. > > I figured you knew that, but one never knows. ;) > >> The HTML is valid. The HTML >> page is NOT generated by mod_python. It's just a plain HTML file in the >> folder. I created it just for testing dynamically created CSS files. >> >> The separate issue of "text/html" content is, indeed, handled by another >> handler. The two are unrelated. When text/css content wouldn't work, I >> tried something simpler: plain HTML return content. >> >> Simply put, req.write(xxx) returns content that my browser does not make >> use of, whether CSS or HTML, despite the explicit declaration of >> req.content_type. The browser just thinks it's text. >> >> It may be more accurate to say that the server never returns HTML or >> CSS, rather than saying that the browser never renders the file >> returned. > > > Is your handler as simple as you indicated or is there other stuff > going on? Any chance you are calling req.write *before* setting > req.content_type? The first call to req.write triggers the sending of > the response headers, which contains the Content-Type header. Once > you've starting calling req.write changing req.content_type will have > no effect. (Hmm, I wonder if we should actually raise an exception... ) > > I find that tools like wget or netcat are helpful for this sort of > thing since you can dump the response headers as well as the page > content. If you don't have ready access to these programs I'm sure you > could know somthing together from the standard python lib. Sometimes > the simplest problems have the simplest solutions. > > Jim > >> =============================== >> David Worley >> Senior Front End Developer >> dworley at communityconnect.com >> =============================== >> -----Original Message----- >> From: Jim Gallacher [mailto:jpg at jgassociates.ca] Sent: Thursday, >> January 26, 2006 4:15 PM >> To: David Worley >> Cc: mod_python at modpython.org >> Subject: Re: [mod_python] Simple Issue, Baffling >> >> David Worley wrote: >> >>> Hello, all. I'm new to mod_python and somewhat new to server side >>> programming. >>> >>> I've read the documentation, and I can't seem to find out something >>> relatively simple. >>> >>> I'm writing a CSS preprocessor. It's meant to grab a request for a >> >> .css >> >>> file, process another file and return the result to the browser. The >>> issue I have is that I can't get the handler to return content the >>> browser actually uses. >>> >>> To clarify, I'm running Apache 2.0, Python 2.4 on Windows XP. >>> >>> So with the following httpd.conf entry: >>> >>> <Directory /some/file/system/directory> >>> AddHandler python-program .sss >>> PythonHandler switch >>> PythonDebug On >>> </Directory> >>> >>> And the following Python code, in switch.py: >>> >>> from mod_python import apache >>> >>> def handler(req): >>> req.content_type = "text/css" >>> req.write("""\ >>> body { background-color: red; }""") >>> return apache.OK >>> >>> This works. It works great. When I request >>> http://localhost/some/file/system/directory/style.css, I get the body >>> declaration above. BUT the browser doesn't use it! >> >> >> Maybe I don't understand the question but why would it? The browser only >> >> uses the stylesheet to render the page when it's specified in an html >> <style> tag. >> >> >>> I have the same problem when declaring req.content_type = "text/html": >>> the code is returned properly, but it isn't rendered as HTML. It's >> >> just >> >>> text, as far as the browser is concerned. >> >> >> You got me there, unless you are saying you are getting the python >> code as opposed to the html you send with req.write. Are you writing >> valid html? Any chance there is a typo in req.content_type = >> 'text/html'? Are you using a different handler for generating the html? >> >> It would help if you can clarify your problem a little. >> >> Jim >> >> >> >> >> _______________________________________________ >> Mod_python mailing list >> Mod_python at modpython.org >> http://mailman.modpython.org/mailman/listinfo/mod_python >> > > _______________________________________________ > Mod_python mailing list > Mod_python at modpython.org > http://mailman.modpython.org/mailman/listinfo/mod_python -- Jim Steil IT Manager Quality Liquid Feeds (608) 935-2345 -------------- next part -------------- An HTML attachment was scrubbed... URL: http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20060126/77d8cfc8/attachment.html
|