link: .htaccess Problem

Beitrag lesen

Ich wüsste keine URI, die "^(.+)$" nicht erfüllen würde, beliebig viele beliebige Zeichen.

Nein, nicht beliebig viele, ist ja .+, nicht .* - also mindestens 1 Zeichen.

ah natürlich, danke

Gematcht wird der Teil nach hostname+port, und vor dem Querystring.

Bei http://example.org/bla?blubb also das /bla.

nein, hier ging es um .htaccess, wir befinden uns also in einem Apache-Directory-Context:

„In per-directory context (Directory and .htaccess), the Pattern is matched against only a partial path, for example a request of "/app1/index.html" may result in comparison against "app1/index.html" or "index.html" depending on where the RewriteRule is defined.

The directory path where the rule is defined is stripped from the currently mapped filesystem path before comparison (up to and including a trailing slash). The net result of this per-directory prefix stripping is that rules in this context only match against the portion of the currently mapped filesystem path "below" where the rule is defined.“

Der beginnende Slash wird also entfernt.

Ob bei http://example.org der / automatisch ergänzt wird, weiß ich nicht - wenn nicht, wäre eine Url wie http://example.org eine, die nicht gematcht würde von ^(.+)$.

Korrekt