Per .htaccess intern umleiten (kein 301)
Hugo-Jonas-Egon
- webserver
Hallo,
ich möchte den Server über .htaccess dazu bringen, Anfragen von Dateien im Verzeichnis http://example.com/xyz/bilder/ direkt mit entsprechenden Dateien aus dem Verzeichnis http://example.com/xyz/files/ zu beantworten, ohne Umleitung des Clients. Leider finde ich überall nur Tipps zu den 30x Umleitungen, ein simpler Alias scheint über .htaccess nicht möglich zu sein. Das muss aber doch irgendwie gehen, oder? Hat jemand das richtige Stichwort?
Danke für Hinweise!
Hi,
ich möchte den Server über .htaccess dazu bringen, Anfragen von Dateien im Verzeichnis http://example.com/xyz/bilder/ direkt mit entsprechenden Dateien aus dem Verzeichnis http://example.com/xyz/files/ zu beantworten, ohne Umleitung des Clients.
dann suchst du vermutlich mod_rewrite. Damit kannst du Requests serverintern umschreibe, ohne dass der Client was davon merkt.
So long,
Martin
Hallo,
dann suchst du vermutlich mod_rewrite. Damit kannst du Requests serverintern umschreibe, ohne dass der Client was davon merkt.
Ja, danke, das nutze ich ja bisher, 301 oder 302 Umleitungen kriege ich hin, nur bei internen Umleitungen bin ich ratlos. Die Apache-Docs habe ich gefunden, allerdings ist mir das alles zu kryptisch, ich stocher da ziemlich im Nebel.
Dies hier geht z. B. auch nicht:
RewriteEngine On
RewriteRule ^/xyz/bilder/(.*) /xyz/files/$1 [PT]
$1 setzt meiner Meinung nach (.*) ein, aber was [PT] macht, weiß ich nicht. Es stand aber im ersten Beispiel auf http://httpd.apache.org/docs/2.2/rewrite/remapping.html.
Gruß Hugo
Moin
Dies hier geht z. B. auch nicht:
RewriteEngine On
RewriteRule ^/xyz/bilder/(.*) /xyz/files/$1 [PT]
>
> $1 setzt meiner Meinung nach (.\*) ein, aber was [PT] macht, weiß ich nicht. Es stand aber im ersten Beispiel auf <http://httpd.apache.org/docs/2.2/rewrite/remapping.html>.
lass mal das [PT]-Flag weg und setz statt dessen mal ein [L]-Flag (last) Außederm wäre es gut die Slash zu escapen.
also zum Beispiel:
~~~apache
RewriteEngine On
RewriteRule ^xyz\/bilder\/(.*) xyz/files/$1 [L]
Das ist dann Mapping und keine HTTP Umleitung (Angabe des Protokolls fehlt ja)
Erklärung der Flags findest du hier: http://de.selfhtml.org/servercgi/server/rewrite.htm
Gruß Bobby
Hallo,
RewriteEngine On
RewriteRule ^xyz/bilder/(.*) xyz/files/$1 [L]
Oh ja, klappt ganz hervorragend, besten Dank!
> Erklärung der Flags findest du hier: <http://de.selfhtml.org/servercgi/server/rewrite.htm>
Schöne Übersicht, habe ich mir gleich gebookmarkt. Danach hatte ich lange gesucht, es war aber schwer, die richtigen Begriffe zu finden.
Frage gelöst, vielen Dank!
Gruß Hugo