[mod_python] Complicated GET configuration

Hunter Matthews thm at duke.edu
Fri Aug 16 16:40:43 EST 2002


On Fri, 2002-08-16 at 16:27, Ian Clelland wrote:

> Because of the <Location> directive, Apache will hand all requests for 
> /XMLRPC and any URL below that to your python module. If you don't want 
> mod_python to handle the GET requests underneath /XMLRPC, then your 
> handler should return apache.DECLINED if req.uri != '/XMLRPC'.

I switched to <Location ~ "/XMLRPC$">

So right now my apache config looks like: 

Alias /XMLRPC/$RHN/ /local/linux/current/www/

<Directory /local/linux>
    # I realize that the default config is to have symlinks on, but the 
    # current part should stand on its own.
    Options FollowSymLinks
    AllowOverride None
</Directory>

<Location ~ "/XMLRPC$">
    PythonPath "sys.path+['/usr/share/current']"
    SetHandler python-program
    PythonHandler current_apache
</Location>

<Location /XMLRPC/$RHN>
    PythonPath "sys.path+['/usr/share/current']"
    PythonAuthzHandler current_apache
</Location>



> 
> Also, as far as I understand it, the SetHandler directive shouldn't be 
> required in order to invoke a PythonAuthzHandler, but I could be wrong. 
> (Not that it will make a difference in your case; the SetHandler for 
> /XMLRPC will also affect the /XMLRPC/$RHN subdirectory anyway)

That would be ideal. However, with the following code in 
/usr/share/current/current_apache.py:

def authzhandler(req):
    """ temp function for testing"""

    apache.log_error("Inside the authzhandler!")
    apache.log_error("method = %s" % req.method)
    apache.log_error("headers = %s" % pprint.pprint(req.headers_in))

    return apache.OK


After an apache restart (to make sure all the updated modules get
reloaded) I'm not seeing any of those log_errors in the error file.
Once I see something (anything) I'll replace that code with the real
thing.

I appreciate the help from the list.





-- 
Hunter Matthews                          Unix / Network Administrator
Office: BioScience 145/244               Duke Univ. Biology Department
Key: F0F88438 / FFB5 34C0 B350 99A4 BB02  9779 A5DB 8B09 F0F8 8438
Never take candy from strangers. Especially on the internet.




More information about the Mod_python mailing list