Gentoo Archives: gentoo-user-de

From: Sebastian Damm <lists@×××××.de>
To: gentoo-user-de@l.g.o
Subject: Re: [gentoo-user-de] mod_rewrite http -> https
Date: Fri, 25 Nov 2005 12:45:03
Message-Id: 20051125134316.13c43c07@mail.sdamm.de
In Reply to: [gentoo-user-de] mod_rewrite http -> https by z3rosix@my-mail.ch
1 Hallo,
2
3 Am 25. November 2005 schrieb z3rosix@×××××××.ch:
4 > ich hab Apache2 bei mir als Webserver im Einsatz und hab ein PW
5 > geschÃŒtztes Verzeichniss unter dem sich Anwendungen fÃŒr Statistiken
6 > und administrative Aufgaben usw. befinden.
7
8 Erstmal: Aua! Bringst Du Deinem Mutt mal bitte bei, seinen UTF-8-Text
9 auch als solchen zu deklarieren?
10
11 > Jetzt möchte ich jedoch das es nicht möglich ist, auf das Verzeichniss
12 > unverschlüsselt (http) zuzugreifen.
13
14 Erstmal würd ich da in die htaccess-Datei eine Zeile wie die hier
15 reinschreiben:
16
17 SSLRequireSSL
18
19 Damit bekommen die Clients eine Fehlermeldung beim Zugriff via HTTP
20 ohne s. Allerdings kann es natürlich sein, dass das schon vor dem
21 Rewriting greift und da anstatt einem Redirect ein Fehler ausgespuckt
22 wird. Also doch vielleicht weglassen. ;)
23
24 > Mod_rewrite wird geladen und als Regel hab ich jetzt drin:
25 >
26 > RewriteEngine on
27 > RewriteRule ^(http.*)$ https://192.168.0.1/dir/$1 [R,L]
28
29 Hmm, das kann erstmal so nicht gehen. Denk ich mal. Denn ich glaub der
30 untersucht nicht den kompletten Pfad sondern nur alles nach dem
31 Servernamen. Zumindest hab ich das bis jetzt immer nur auf Pfade nach
32 dem Hostname verwendet und dabei mit ^ angefangen, was ja den Anfang
33 der Zeichenkette darstellen soll.
34
35 Falls doch der komplette URI geprueft worden waere, haettest Du nach
36 dem Umschreiben einen URL à la
37 https://192.168.0.1/dir/http://...index.html
38 rausbekommen. Denn Du hättest den kompletten String an den neuen
39 Servernamen angehängt. Außerdem ist die Matching-Regel schlecht, denn
40 sie matcht auch auf einen String, der mit https:// beginnt.
41
42 Eine Regel
43
44 RewriteCond %{SERVER_PORT} ^80$
45 RewriteRule ^/(.*) https://server.name.tld/$1 [L,R]
46
47 sollte da aber helfen. Kann natürlich auch negiert werden wie in der
48 Antwort von Jens.
49
50 Ciao
51 Sebastian
52 --
53 Sebastian Damm
54 Blog: http://blog.sdamm.de
55 GPG-Encrypted mail welcome! ID: 0x64D96827 @ pgpkeys.pca.dfn.de
56 Fingerprint: CB7F F23F D950 644D 838B 215A 550F 75EC 64D9 6827