Fabian Fagerholm
fabbe at paniq.net
Mon Aug 19 11:53:01 EST 2002
On Fri, 2002-08-16 at 16:00, Gregory (Grisha) Trubetskoy wrote: > On 16 Aug 2002, Fabian Fagerholm wrote: > > If you're using the Publisher handler, you can use req.write() once, > > but then you *have* to return something at the end of your function, > > or things won't work. > > You should be able to use write() many times as you like. It should also > be ok to return an empty string *if* you have written something with > write(), otherwise returning an empty document will cause a problem with > Netscape at least. Right, now I have it working. I see now why I was confused. It seems to me that mod_python is behaving differently at different times. For example: If I follow the Tutorial section in the mod_python docs, and create a directory /home/fabbe/public_html/mod_python/temp_test_1 for my tests, and in this directory, I place a .htaccess file with the following contents: AddHandler python-program .py PythonHandler myscript just like in the tutorial. Then, I write myscript.py in the same directory: from mod_python import apache def handler(req): req.content_type = "text/plain" req.send_http_header() req.write("Hello, World!") return apache.OK I then load ~fabbe/mod_python/temp_test_1/myscript.py from the web server, and I get the following: Hello, World! <p>/home/fabbe/public_html/mod_python/temp_test_1/myscript.py</p> which is not what I expected. But when I press reload on my browser, the last line disappears and everything works as expected *even if I remove those files and rewrite them, or change 'myscript' to 'fooscript'*! I don't get it... :) The apache logs show the following: First access: 212.226.163.85 - - [19/Aug/2002:11:34:33 +0300] "GET /~fabbe/mod_python/temp_test_1/myscript.py HTTP/1.1" 200 99 "https://no.paniq.net/~fabbe/mod_python/temp_test_1/" "Mozilla/5.0 Galeon/1.2.5 (X11; Linux i686; U;) Gecko/20020610 Debian/1.2.5-1" Subsequent accesses: 212.226.163.85 - - [19/Aug/2002:11:41:52 +0300] "GET /~fabbe/mod_python/temp_test_1/myscript.py HTTP/1.1" 200 25 "-" "Mozilla/5.0 Galeon/1.2.5 (X11; Linux i686; U;) Gecko/20020610 Debian/1.2.5-1" The only difference I see compared to the tutorial is that I'm using https. But that shouldn't affect mod_python, should it? Could someone clarify? Cheers, Fabian
|