Reuben A Christie
christie at knewco.com
Fri Dec 5 08:08:08 EST 2008
In the python script itself, i set the content type to text/plain , I have not set any AddType directive in apache config Graham Dumpleton wrote: > 2008/12/5 Reuben A Christie <christie at knewco.com>: > >> thanks alot graham. I was able to import the modules the way you showed. its >> little intriguing but I think I ll find a better way by combining them into >> one __init__.py hopefully that will work >> one more question, I keep seeing this warning message on apache log >> [warn] Cannot get media type from 'mod_python' >> its not causing any issue but I really don't understand why is it appearing >> > > What is the content type you are returning or have setup using AddType > directives? It appears it may be malformed. The message is mod_mime > complaining about it. > > Graham > > >> Graham Dumpleton wrote: >> >>> 2008/12/3 Reuben A Christie <christie at knewco.com>: >>> >>> >>>> Hi all, I am pretty novice user of mod_python. and there is an issue that >>>> I >>>> am experiencing with mod_python scripts for past 2 days that I am not >>>> able >>>> to solve. >>>> >>>> my directory structure is as following, >>>> >>>> DocumentRoot : /usr/local/apache2/htdocs/ >>>> i have a directory structure for mod_python scripts under DocumentRoot >>>> is, >>>> >>>> launch.py >>>> python_test/p1/test1 >>>> python_test/p2/test2 >>>> >>>> in apache config, i have added following >>>> >>>> <Directory /usr/local/apache/htdocs/python_test > >>>> AllowOverride All >>>> Order allow,deny >>>> allow from all AddHandler mod_python .py >>>> PythonHandler launch >>>> PythonDebug On >>>> </Directory> >>>> >>>> and launch.py looks like this, >>>> >>>> import os.path >>>> from mod_python import apache, Session, util >>>> >>>> def handler(req): >>>> request = os.path.splitext(os.path.basename( req.uri ))[0] >>>> req.content_type = 'text/plain' >>>> req.send_http_header() >>>> >>>> status = apache.OK >>>> if request != None: >>>> mod = __import__(request) >>>> >>>> >>> This is the wrong way of going about it. See below. >>> >>> >>> >>>> if request == "test1": >>>> status = mod.handler(req) >>>> return status >>>> basically this script should act as gateway for rest of the >>>> python scripts . >>>> >>>> when I test it with, http://localhost/python_test/test1.py it does not >>>> work >>>> (i get Not found message) and if I do http://localhost/python_test/p1 i >>>> get >>>> the source code of the script appear. >>>> >>>> >>> For configuration as written, the launch.py file is in wrong location. >>> >>> First off suggest that launch.py not be in htdocs as then someone can >>> download source code to your handler. >>> >>> Presuming you are using mod_python 3.3.1 (if not then upgrade), move >>> the launch.py file elsewhere and then change configuration to use: >>> >>> PythonHandler /some/path/launch.py >>> >>> Where path is location of launch.py outside of htdocs. >>> >>> Also don't use __import__. You are better off using import_module() >>> from mod_python. That way you can just supply a path to file to import >>> and not have to worry about PythonPath and lots of other module >>> madness. See: >>> >>> http://www.modpython.org/live/current/doc-html/pyapi-apmeth.html >>> >>> Graham >>> >>> >>> >>> >> _______________________________________________ >> Mod_python mailing list >> Mod_python at modpython.org >> http://mailman.modpython.org/mailman/listinfo/mod_python >> >> >> > > > -------------- next part -------------- A non-text attachment was scrubbed... Name: smime.p7s Type: application/x-pkcs7-signature Size: 3316 bytes Desc: S/MIME Cryptographic Signature Url : http://mm_cfg_has_not_been_edited_to_set_host_domains/pipermail/mod_python/attachments/20081205/62d2456a/smime.bin
|