httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Hracek, Petr" <petr.hra...@siemens-enterprise.com>
Subject VirtualHost rewrite and mod_negotiation
Date Tue, 28 Apr 2009 11:31:45 GMT
Hello all,
 
sorry for bother you with issue both I think that I misunderstand how
the mod_negotiation and mod_rewrite work is working.
 
In my apache I have enabled Virtual Host called:
 
<VirtualHost _default_:443>
SSLEngine on
DocumentRoot "/opt/apache/htdocs/ssldocs"
AddType text/html .shtml
 
RewriteEngine on
RewriteCond %{REQUEST_METHOD} ^TRACE
RewriteRule .* - [F]
RewriteMap unity txt:/opt/apache/conf/unity.map
RewriteRule ^/(common|public)/(.*)  /opt/unity/htdocs/$1/$2 [L]
RewriteRule ^/([^/]+)$              ${unity:$1|/$1} [L]
RewriteRule ^/([^/]+)/(.*)  ${unity:$1|/opt/apache/htdocs/ssldocs/$1}/$2
[L]
RewriteLog "/var/log/apache2/rewrite_log"
RewriteLogLevel 3

<Directory />
    Options +Includes Indexes +MultiViews FollowSymLinks
    AllowOverride None
    Order deny,allow
    Deny from all
    MultiviewsMatch Any
    SetOutputFilter INCLUDES
</Directory>
 
In /opt/apache/conf/unity.map is mentioned:
APPL /opt/appl/htdocs
 
In the directory /opt/appl/htdocs is:
test:/var/log/apache2 # ll /opt/appl/htdocs/index.*
-rw-r----- 1 hg3550m unity 887 Mar 27 10:12
/opt/appl/htdocs/index.shtml.de
-rw-r----- 1 hg3550m unity 893 Mar 27 10:12
/opt/appl/htdocs/index.shtml.en_US
test:/var/log/apache2 #

Unfortunatelly when I go to the page https://localhost/APPL/index.shtml
then it show me in the /var/log/apache2/error_log "Negotiation:
discovered file(s) matching request: /opt/appl/htdocs/index.shtml (None
could be negotiated)".
Rewrite Rule is working properly but negotiation is not working well.
 
When I am inserting following lines to the configuration file:
<Directory "/opt/appl/htdocs">
    Options +Includes +Multiviews
    AuthType TestAuth
    require auth-validation
    Satisfy any
</Directory>
then the negotiation is working.
 
I thought that all directories under DocumentRoot including RewriteMap
has the same setting as <Directory /> flag, right?
Could you please explain me why I am getting error from Negotiation
module? Error code which is mentioned in apache is HTTP 404.
Does it mean the for each directory which is not under
/opt/apache/htdocs/ssldocs has to be mentioned special directive
Directory?
What did I set incorrectly?

Best regards
Petr

Mime
View raw message