[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Apache Rewrite Problem



Hm, sowas fuchst mich ja immer. Das hier ist es aber nicht?

http://www.andrewrollins.com/2008/01/22/wordpress-and-htaccess-password-protected-directories/

Das wird so ähnlich wahrscheinlich auch passieren, wenn die Permissions
der statischen Verzeichnisse dem Apache nicht erlauben, drauf
zuzugreifen. Dürfte es aber auch nicht sein, wenn Du Dateien in den
Verzeichnissen ausliefern kannst.

Alexander Reichle-Schmehl:
> * Jochen Spieker <ml@well-adjusted.de> [120215 12:00]:
> 
>> Für mich liest sich die Apache-Doku so, dass REQUEST_FILENAME schon ein
>> absoluter Pfad ist. Dementsprechend müsstest Du DOCUMENT_ROOT weglassen.
>> (Nein, dass normale Dateien damit angezeigt werden, deckt sich nicht mit
>> dieser Lesart, probieren würde ich es trotzdem).
> 
> Habe ich auch getestet, aber das tut irgendwie auch nicht.

Hm. Ich hab nochmal geschaut. Was meiner Meinung nach am sinnvollsten
wäre, ist REQUEST_URI. Das ist alles zwischen Hostname und Query-String.

Ich quote zur Übersicht nochmal Deine Regeln:

| RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
| RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
| RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-l
| RewriteRule ^(.*)$ /index.cgi/$1 [L,QSA]

> Das sagt bei LogLevel vier folgendes:
> 
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ecf3f0/initial] (2) init rewrite engine with requested uri /tmp/tmp/
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ecf3f0/initial] (3) applying pattern '^(.*)$' to uri '/tmp/tmp/'
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ecf3f0/initial] (4) RewriteCond: input='/srv/www/schmehl.info/www/tmp/tmp/' pattern='!-d' => not-matched
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ecf3f0/initial] (1) pass through /tmp/tmp/

Wie Du schreibst, das sieht ja eigentlich gut aus. Das Verzeichnis wird
gefunden.

> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (2) init rewrite engine with requested uri /tmp/tmp/index.html

Ich lese das so, dass Apache hier einen internen Sub-Request macht.
Dabei wird -- warum auch immer -- index.html angehängt. DirectoryIndex
würde mich wundern, ist aber das einzige, was mir einfällt.

> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (3) applying pattern '^(.*)$' to uri '/tmp/tmp/index.html'
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (4) RewriteCond: input='/srv/www/schmehl.info/www/tmp/tmp/index.html' pattern='!-d' => matched
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (4) RewriteCond: input='/srv/www/schmehl.info/www/tmp/tmp/index.html' pattern='!-f' => matched
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (4) RewriteCond: input='/srv/www/schmehl.info/www/tmp/tmp/index.html' pattern='!-l' => matched
> 194.95.112.177 - - [15/Feb/2012:12:36:09 +0000] [www.schmehl.info/sid#7fc397d46250][rid#7fc397ed3410/subreq] (2) rewrite '/tmp/tmp/index.html' -> '/index.cgi//tmp/tmp/index.html'

Beim Sub-Request scheitert die Geschichte dann erst. Probier mal, an die
RewriteRule das Flag "nosubreq" anzuhängen. Die Doku klingt wie für Dich
gemacht:

| For instance, sub-requests occur internally in Apache when mod_include
| tries to find out information about possible directory default files
| (index.xxx). On sub-requests it is not always useful, and can even cause
| errors, if the complete set of rules are applied. Use this flag to
| exclude some rules.
| To decide whether or not to use this rule: if you prefix URLs with
| CGI-scripts, to force them to be processed by the CGI-script, it's
| likely that you will run into problems (or significant overhead) on
| sub-requests. In these cases, use this flag. 


J.
-- 
My memories gild my life with rare transcendance.
[Agree]   [Disagree]
                 <http://www.slowlydownward.com/NODATA/data_enter2.html>

Attachment: signature.asc
Description: Digital signature


Reply to: