SSL geschütze Seiten
SSL geschütze Seiten
Hallo Forum,
ich habe die Suchfunktion schon benutzt, was das Thema betrifft, jedoch den Thread, der mir genau zu meinem Problem hilft nicht gefunden..
Ich habe meine Seiten auf Strato gehostet und kann mittels ssl-id.de proxy meine seiten über https abrufen. Wenn ich in den Mandanteneinstellungen die Adresse einstelle, klappt das wunderbar..
Allerdings möchte ich nur den internen Bereich der Seite über einen ssl Kanal laufen lassen. Mein Ansatz wäre jetzt, den webpfad des mandaten händisch zu ändern, nachdem man sich einloggt, bzw. je nach bedarf.
Ist das irgendwie möglich, bzw. gibt es eine andere evtl. einfachere Möglichkeit?
schönen Gruß,
noolei
ich habe die Suchfunktion schon benutzt, was das Thema betrifft, jedoch den Thread, der mir genau zu meinem Problem hilft nicht gefunden..
Ich habe meine Seiten auf Strato gehostet und kann mittels ssl-id.de proxy meine seiten über https abrufen. Wenn ich in den Mandanteneinstellungen die Adresse einstelle, klappt das wunderbar..
Allerdings möchte ich nur den internen Bereich der Seite über einen ssl Kanal laufen lassen. Mein Ansatz wäre jetzt, den webpfad des mandaten händisch zu ändern, nachdem man sich einloggt, bzw. je nach bedarf.
Ist das irgendwie möglich, bzw. gibt es eine andere evtl. einfachere Möglichkeit?
schönen Gruß,
noolei
-
- Beiträge: 3215
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 17 Mal
- Kontaktdaten:
Hallo,
der Zugriff auf das Mandantenverzeichnis über das Backend soll über https laufen, ist das so richtig?
Die Mandanteneinstellungen, auch der Webpfad werden im Backend in der Session gespeichert. Die Funktion "rereadClients()" (/contenido/includes(functions.general.php) ließt diese Daten aus und füllt damit die globale Variable $cfgClient.
Ein Ansatz wäre das Anpassen der Zeile
Beispiel:
Nachteil dabei ist das Ändern einer Contenido-Core Funktion. Das kann bei einem Update überschrieben werden.
Gruß
xmurrix
der Zugriff auf das Mandantenverzeichnis über das Backend soll über https laufen, ist das so richtig?
Die Mandanteneinstellungen, auch der Webpfad werden im Backend in der Session gespeichert. Die Funktion "rereadClients()" (/contenido/includes(functions.general.php) ließt diese Daten aus und füllt damit die globale Variable $cfgClient.
Ein Ansatz wäre das Anpassen der Zeile
Code: Alles auswählen
$cfgClient[$db->f("idclient")]["path"]["htmlpath"] = $db->f("htmlpath");
Code: Alles auswählen
if ($_SERVER['SERVER_PORT'] == '443') {
$htmlpath = str_replace("http://", "https://", $db->f("htmlpath"));
} else {
$htmlpath = $db->f("htmlpath");
}
$cfgClient[$db->f("idclient")]["path"]["htmlpath"] = $htmlpath;
Gruß
xmurrix
Er möchte das Frontend über SSL laufen lassen, sobald man sich angemeldet hat bzw. eine bestimmte, geschützte Kategorie aufruft.
Gruß
HerrB
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
-
- Beiträge: 3215
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 17 Mal
- Kontaktdaten:
Stimmt, das habe ich jetzt nicht richtig gelesen.
Wie wäre es, wenn man z. B. mit folgendem Code in der "config.local.php" sollte doch möglich sein, oder?:
Das Snippet sollte dafür sorgen, dass bei einem Angemeldeten User auf https gewechselt wird, wenn die seite nicht auf https läuft, und anders herum.
Das würde sich aber für alle Seiten auswirken, nicht nur auf geschützte Bereiche.
Gruß
xmurrix
Wie wäre es, wenn man z. B. mit folgendem Code in der "config.local.php" sollte doch möglich sein, oder?:
Code: Alles auswählen
if ($auth->auth['userid'] !== 'nobody' && $_SERVER['SERVER_PORT'] !== '443') {
//user angemeldet und seite läuft nicht auf https
$sess->register("cfgClient");
$cfgClient[$client]["path"]["htmlpath"] = str_replace("http://", "https://", $cfgClient[$client]["path"]["htmlpath"]);
page_close();
header("Location: ".$cfgClient[$client]["path"]["htmlpath"]."front_content.php?idart=".$idart);
} elseif($auth->auth['userid'] == 'nobody' && $_SERVER['SERVER_PORT'] == '443') {
//kein user angemeldet aber seite läuft auf https
$sess->register("cfgClient");
$cfgClient[$client]["path"]["htmlpath"] = str_replace("https://", "http://", $cfgClient[$client]["path"]["htmlpath"]);
page_close();
header("Location: ".$cfgClient[$client]["path"]["htmlpath"]."front_content.php?idart=".$idart);
}
Das würde sich aber für alle Seiten auswirken, nicht nur auf geschützte Bereiche.
Gruß
xmurrix
es müsste auch gehen das direkt ins mandanten verzeichnis zu legen...
einfach eine config.local.php dort erstellen
mit inhalt
speichern, fertig...
einfach eine config.local.php dort erstellen
mit inhalt
Code: Alles auswählen
<?php
// obriger code
?>
*** make your own tools (wishlist :: thx)
-
- Beiträge: 3215
- Registriert: Do 21. Okt 2004, 11:08
- Wohnort: Augsburg
- Hat sich bedankt: 4 Mal
- Danksagung erhalten: 17 Mal
- Kontaktdaten:
Die Datei "config.local.php" kannst du im Mandantenverzeichnis (/cms/) anlegen, wenn sie dort nicht vorhanden ist. Habe den Code aber nicht getestet, also ohne Gewähr...noolei hat geschrieben:@xmurrix: ginge zur Not eigentlich auch. Wo finde ich die config.local.php? Ich sehe hier nur eine config.php...
Eine andere Alternative wäre der Einsatz von steses ModRewrite Version. Hier werden sowieso alle internen Links vor der Ausgabe ersetzt. Darum kümmert sich die Funktion build_new_url der ModRewrite-Klasse. Das könnte man z. B. anpassen indem alle gefundenen Referenzen auf Kategorien und Artikel überprüft werden, ob sich diese in einem internen Bereich befinden und dann demensprechen die URL anpassen. Das geht aber, je nach Anzahl der zu überprüfenden Kategorien/Artikel, zu Lasten der Performance.
Gruß
xmurrix
Ich habe das selbe Problem. Ich habe alle Lösungen die hier im Forum stehen probiert, doch dabei gab es immer irgendwelche Probleme (z.B. dass man dann überall mit ssl rumsurft - was leider nicht gut ist).
Ich habe das Problem so gelöst:
bashref ausstellen (Administration, Mandant)
in meinem Login-Formular habe ich <form action="https//:Domain/ gesetzt. Beim Logout verlinke ich wieder auf http.
Bitte sagt mir mal, was ihr von der Lösung haltet.
Sicher nicht optimal, aber simpel.
Danke!
Ich habe das Problem so gelöst:
bashref ausstellen (Administration, Mandant)
in meinem Login-Formular habe ich <form action="https//:Domain/ gesetzt. Beim Logout verlinke ich wieder auf http.
Bitte sagt mir mal, was ihr von der Lösung haltet.
Sicher nicht optimal, aber simpel.
Danke!
D.h. mit dem Code von xmurrix warst Du auch nach dem Logout mit SSL unterwegs? Sicher?
Deine Lösung ist vom Verhalten im Prinzip identisch, außer das ohne das basehref mod_rewrite von stese nicht genutzt werden kann (so zur Info).
Gruß
HerrB
Deine Lösung ist vom Verhalten im Prinzip identisch, außer das ohne das basehref mod_rewrite von stese nicht genutzt werden kann (so zur Info).
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
SObald ich auf http://domain gegangen bin, wurde ich direkt auf https://domain weitergeleitet. Das war sehr unpaktisch, weil SSL doch ein Stückchen langsamer ist.HerrB hat geschrieben:D.h. mit dem Code von xmurrix warst Du auch nach dem Logout mit SSL unterwegs? Sicher?
Das mit dem basehref hat mir eh nie so richtig gefallen - und ich hoffe auch, dass ich durch das entfernen keine Probleme habe.
Ja, aber das dürfte nur passieren, wenn Du Dich nicht aktiv ausgeloggt hast, mindestens ein Browser-Fenster noch offen geblieben ist und damit die Session noch immer aktiv war (sie "hält" im Frontend bis zu 15 Minuten, im Backend bis zu 60 Minuten).
Gruß
HerrB
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net