This was with the Subversion trunk.

I"ll do some tests with 3.2.8 and tell you the results.

Nicolas

2006/4/17, Graham Dumpleton < [EMAIL PROTECTED]>:
Was this with mod_python from subversion or 3.2.8?

Want to qualify whether latest set of changes I checked in to support
Files directive has caused it to behave differently as how it determines
req.hlist.directory is different to before.

Thanks.

Graham

On 18/04/2006, at 4:33 AM, Nicolas Lehuen wrote:

> Hi Graham,
>
> Here is the test handler I've used :
>
> from mod_python import apache
>
> def handler(req):
>     req.content_type = 'text/plain'
>     req.write(req.hlist.directory+'\n')
>     req.write(req.filename+'\n' )
>     return apache.OK
>
> If I use :
>
> DocumentRoot "c:\\apache22\\htdocs"
> <Directory "c:\\apache22\\htdocs">
>    # ...
>     SetHandler mod_python
>     PythonHandler test_handler
> </Directory>
>
> I get, when calling http://localhost/index.html:
>
> c:\apache22\htdocs/
> C:/apache22/htdocs/index.htmlNote that the drive letter has been
> uppercased and req.filename normalized to POSIX path names.
> req.hlist.directory , though supported by Win32, looks weird.
>
> Now with :
>
> DocumentRoot "c:/apache22/htdocs"
> <Directory "c:/apache22/htdocs">
>    # ...
>     SetHandler mod_python
>     PythonHandler test_handler
> </Directory>
>
> I get :
>
> c:/apache22/htdocs/
> C:/apache22/htdocs/index.html
> With :
>
> DocumentRoot "c:/apache22/htdocs"
> <Directory "c:\\apache22\\htdocs">
>    # ...
>     SetHandler mod_python
>     PythonHandler test_handler
> </Directory>
>
> I get :
>
> c:\apache22\htdocs/
> C:/apache22/htdocs/index.html
> And finally with :
>
> DocumentRoot "c:\\apache22\\htdocs"
> <Directory "c:/apache22/htdocs">
>    # ...
>     SetHandler mod_python
>     PythonHandler test_handler
> </Directory>
>
> I get :
> c:/apache22/htdocs/
> C:/apache22/htdocs/index.html
> So req.filename seems always normalized while req.hlist.directory
> reflects what was entered in the Directory tag. Both POSIX and
> Windows forms are allowed, unfortunately, but the backslash forms
> needs C-style escaping, and IIRC the Apache documentation
> recommends using forward slashes.
>
> Regards,
> Nicolas
> 2006/4/16, Graham Dumpleton <[EMAIL PROTECTED]>: I am sure I
> asked this a long time ago, but have forgotten all the
> details.
>
> On Win32 systems does req.filename set by Apache always use POSIX
> style forward slashes, ie., '/', to separate components of a
> directory? Thus:
>
>    /some/path
>
> How does Apache indicate a drive letter when one is necessary? Is it:
>
>    c:/some/path
>
> Does any of the above change based on whether forward or backward
> slashes are used in a Directory directive? Ie.,
>
>    <Directory c:/some/path>
>    ...
>    </Directory?
>
> vs:
>
>    <Directory "c:\\some\\path>
>    ...
>    </Directory>
>
> Or does Apache not allow the latter anyway?
>
> If Apache does allow the latter, does that mean that
> req.hlist.directory
> is coming through set including backslashes rather than forward
> slashes.
>
> I want to get my head around this all again as at different times the
> values
> of req.filename and req.hlist.directory are used to determine the
> Python
> interpreter name. As highlighted in:
>
>    http://issues.apache.org/jira/browse/MODPYTHON-161
>
> If there is a mix of conventions, with user code also being able to
> affect
> these values, there may be no consistency and thus could end up with
> scenarios where a different interpreter to one than was expected
> will be
> used.
>
> Any help from Win32 users in understanding all this would be much
> appreciated.
>
> Thanks.
>
> Graham
>


Reply via email to