httpd-users-de mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Frank Thommen <frank.thom...@drosera.ch>
Subject Problem: Rewrite mit Ausnahmen funktioniert nicht
Date Thu, 28 May 2009 19:34:11 GMT
Hallo zusammen,

ich kaempfe schon seit Stunden mit einem mod_rewrite Problem, fuer 
welches es vermutlich eine ganz einfache Loesung gibt....;-)


Innerhalb eines virtuellen Hosts (ein Wiki mit Rewrite-Regeln fuer 
"schoene" URLs) werden alle URLs auf /doku.php?id=$REQUEST_URI gemappt. 
  Einige spezifische URLs sollen aber direkt auf physische Pfade 
_ausserhalb_ der DocumentRoot des vhosts gemappt werden.  Im Beispiel 
unten waere das die URL /software/linux, welche direkt auf 
/var/apache2/2.2/htdocs/software/linux gemappt werden sollte.

Alles laeuft unter OpenSolaris mit Apache 2.2.


/etc/apache2/2.2/httpd.conf:

[...]
<VirtualHost *:80>
   ServerName www.struct-it
   DocumentRoot  /export/data/www/dokuwiki/

   # RewriteEngine on
   RewriteLog /tmp/rw.log
   RewriteLogLevel 9

   <Directory /export/data/www/dokuwiki/>
     Options FollowSymLinks

     RewriteEngine on

     #
     # generelles Mapping fuer schoene URLs
     #
     RewriteRule ^_media/(.*)  lib/exe/fetch.php?media=$1  [QSA,L]
     RewriteRule ^_detail/(.*) lib/exe/detail.php?media=$1  [QSA,L]
     RewriteRule ^$            doku.php  [L]
     RewriteCond %{REQUEST_FILENAME}       !-f
     RewriteCond %{REQUEST_FILENAME}       !-d
     RewriteCond %{REQUEST_URI} !/software/linux(.*)$
     RewriteRule (.*)                      doku.php?id=$1  [QSA,L]

     #
     # Die spezielle URL /software/linux soll direkt auf
     # den Filesystem-Pfad /var/apache2/2.2/htdocs/software/linux
     # gemappt werden
     #
     RewriteCond %{REQUEST_URI} ^/software/linux(.*)$
     RewriteRule (.*)           /var/apache2/2.2/htdocs/$1 [L]

   </Directory>

</VirtualHost>


Ich habe unzaehlige RewriteRule-Optionen in verschiedenen Kombinationen 
ausprobiert.  Das Resultat fuer http://www.struct-it/software/linux ist 
praktisch immer dasselbe:


# tail /var/apache2/2.2/logs/error_log
[...]
[Thu May 28 21:24:19 2009] [error] [client 10.1.103.215] File does not 
exist: /export/data/www/dokuwiki/var
#


Im Browser:

Error 404: The requested URL /var/apache2/2.2/htdocs/software/linux was 
not found on this server.


Der kompletten RewriteLog Output fuer diesen Seitenaufruf ist auf 
http://nopaste.info/e8c70f2527.html abgelegt.


Wer kann mir helfen, das gewuenschte Resultat zu erreichen?


Gruss

    frank

--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de" 
      unsubscribe-Anfragen an users-de-unsubscribe@httpd.apache.org
           sonstige Anfragen an users-de-help@httpd.apache.org
--------------------------------------------------------------------------


Mime
View raw message