On 20021215152133, Matt Sergeant wrote:
> <Files. *.xsl>
> Order deny, allow
> </Files>
> 
> Should work.
No, it should not.
That means: allow everybody to retrieve those files. I want to say:
allow nobody but AxKit to access those files.
If I put:

<Files *>
 Order allow,deny
 allow from 192.168.111.145  # my machine's IP address
 allow from 127.0.0.1
</Files>

it works only if the originating request comes from one of those two
addresses.

I've looked at the source of Provider::File, and since it uses
sub-requests to access the files, this is the correct (albeit a bit
unexpected, at least for relative URIs) behaviour.
So I changed my directives for finding the XSLT as follows:

<Files "node">
AxAddProcessor application/x-xsp .
AxAddProcessor text/xsl file:///home/dakkar/public_html/something/xsl/node.xsl
</Files>

(since Provider::File treats 'file:' URIs directly, without
sub-requests).
Now, after requesting '/~dakkar/something/node', my error log contains:
--------------
< compilation of the XSP, working >

[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] execution of: 
Apache::AxKit::Language::XSP::handler finished
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] Style Provider Override: 
Apache::AxKit::Provider::File
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] [file] File Provider 
given file: /home/dakkar/public_html/something/xsl/node.xsl
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] about to execute: 
Apache::AxKit::Language::LibXSLT::handler
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] [LibXSLT] getting the XML
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] [LibXSLT] parsing 
stylesheet
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] [LibXSLT] parsing 
stylesheet /~dakkar/something/node
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] LibXSLT match_uri: 
file:///etc/xml/catalog
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] LibXSLT match_uri: 
file:///etc/xml/catalog
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] LibXSLT match_uri: 
/~dakkar/something/common.xsl
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] LibXSLT 
open_stylesheet_uri: /~dakkar/something/common.xsl
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] Style Provider Override: 
Apache::AxKit::Provider::File
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] [req] File Provider given 
$r: /home/dakkar/public_html/something/common.xsl
[Mon Dec 16 11:43:11 2002] [warn] [client 127.0.0.1] [AxKit] Caught an exception[Mon 
Dec 16 11:43:11 2002] [error] [client 127.0.0.1] [AxKit] [Error] input callback died: 
File '/home/dakkar/public_html/something/common.xsl' does not exist or is not readable 
at /usr/lib/perl5/site_perl/5.8.0/i686-linux-thread-multi-ld/XML/LibXSLT.pm line 89.
--------------

As you can see, it gets the right file, but then LibXSLT somehow gets
the wrong URI for that file (it believes that the stylesheet's URI is
the same as the URI of the main request?), so it computes the wrong
URI for the imported stylesheet (node.xsl contains
'<xsl:import href="common.xsl"/>').

How am I going to solve this?

-- 

        Dakkar - <Mobilis in mobile>

Everywhere you go you'll see them searching,
Everywhere you turn you'll feel the pain,
Everyone is looking for the answer,
Well look again.
                -- Moody Blues, "Lost in a Lost World"

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to