Ergebnis 1 bis 15 von 15

Thema: Umstellung von http auf https bei Subdomain und Contao im Unterordner

  1. #1
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard Umstellung von http auf https bei Subdomain und Contao im Unterordner

    Liebe Fachkundige,

    nach Jahren mal wieder eine Frage, nachdem ich nichts genau Passendes im Forum gefunden habe:

    Ich ziehe erstmals eine Contao-Installation von http auf https um.
    Contao (mit Onlineshop) wurde im Unterordner http://meine-domain.de/unterordner/, installiert, ist dort zu bearbeiten, aufzurufen, zu testen etc. Alles prima.

    Beim Hoster habe ich eine Subdomain angelegt, die auf diesen Unterordner verweist.
    http://subdomain.meine-domain.de

    Parallel habe ich ein SSL-Zertifikat für die Subdomain geordert und erfolgreich aktiviert.
    https://subdomain.meine-domain.de
    Der Hoster schreibt zwar: Folgende Domainnamen sind von dem Zertifikat abgedeckt:
    - www. subdomain.meine-domain.de
    - subdomain.meine-domain.de
    Die https://www.subdomain.meine-domain.de/index.php/ wird aber nicht geladen.
    Bei der https://subdomain.meine-domain.de/index.php/ erscheint die Contao-Fehlermeldung: „Seite nicht gefunden“.

    Ich muss dahin kommen, dass:
    • bei Aufruf der Subdomain https://subdomain.meine-domain.de/index.php die Seiten im Unterordner gefunden/angezeigt werden
    • bei Aufruf der ungesicherten Testumgebung http://meine-domain.de/unterordner/ auf die abgesicherte Subdomain https://subdomain.meine-domain.de geleitet wird.
    • bei Aufruf von https://www.subdomain.meine-domain.de auf die Subdomain https://subdomain.meine-domain.de geleitet wird.
    • die Hauptdomain http://meine-domain.de davon unberührt bleibt.

    Ich habe bei DNS beim Startpunkt der Website "HTTPS in Sitemaps" aktiviert.
    Ich habe es bei DNS mit und ohne Domainnamen subdomain.meine-domain.de probiert.
    Ich habe den Seitencache geleert.

    Das (in Grün) habe ich testweise neu in die die .htaccess geschrieben:
    ##
    # URL rewriting
    ##
    <IfModule mod_rewrite.c>
    RewriteEngine On
    # wegen Installation von Contao im Unterverzeichnis /unterordner (funktioniert!)
    RewriteBase /unterordner

    ##
    # Uncomment the following lines to add "www." to the domain:
    #
    # RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
    # RewriteRule (.*) http://www.example.com/$1 [R=301,L]
    #
    # Uncomment the following lines to remove "www." from the domain:
    #
    RewriteCond %{HTTP_HOST} ^www\.subdomain\.meine-domain\.de$ [NC]
    RewriteRule (.*) http:// subdomain.meine-domain.de /$1 [R=301,L]


    #
    # Make sure to replace "example.com" with your domain name.
    # Umleitung auf https
    RewriteCond %{HTTPS} !=on
    RewriteRule ^/?(.*) https:// subdomain.meine-domain.de /$1 [R,L]

    ##

    Das funktioniert aber nicht.
    Habe ich Fehler im Code?
    Müssen da noch mehr Zeilen hin?
    Oder habe ich einen anderen Denkfehler?

    Vielen Dank für Eure Hilfe!

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.130
    Partner-ID
    10107

    Standard

    Du musst deine Contao Installationen physisch trennen. Die eine Contao Installation darf sich nicht in einem Unterordner der anderen Contao Installation befinden.

    Darüberhinaus erscheint mir diese RewriteRule unnötig kompliziert:
    Zitat Zitat von newbee Beitrag anzeigen
    RewriteCond %{HTTPS} !=on
    RewriteRule ^/?(.*) https:// subdomain.meine-domain.de /$1 [R,L]
    Folgendes sollte auch reichen:
    Code:
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

  3. #3
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hat denn der Zugriff auf http://www.subdomain.meine-domain.de vor der Umstellung auf https funktioniert? Eine fourth level domain ist eigentlich etwas ungewöhnlich.
    Aber ich muss Spooky da recht geben. Eine Contao-Installation in einem Unterverzeichnis einer anderen Installation ist nicht gut und führt zu Problemen. Also besser die Installation der Hauptdomain in ein Unterverzeichnis und die der Subdomain in ein anderes Unterverzeichnis packen und die Domain/Subdomain dann jeweils auf das entsprechende Unterverzeichnis verweisen. Und falls die Aufrufmöglichkeit über http://meine-domain.de/unterordner/ auf die Subdomain wirklich benötigt wird, würde ich das dann über eine Weiterleitung per .htaccess RewriteCond und RewriteRule machen.

  4. #4
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    Danke für Eure Antworten!
    Zitat Zitat von Spooky Beitrag anzeigen
    Du musst deine Contao Installationen physisch trennen. Die eine Contao Installation darf sich nicht in einem Unterordner der anderen Contao Installation befinden.
    Ja, der Unterordner /unterordner befindet sich auf gleicher Ebene wie assets, contao, files etc. der seit 2 Jahren laufenden Hauptdomain.
    Die sollte jetzt um einen Shop erweitert werden. Nur der, bzw. die zu ihm führende Subdomain, sollte per SSL geschützt werden.
    Die Installation einer weiten Contao-Site mit der Shop-Erweiterung in einem Unterordner und eigener Datenbank erschien mir das Sinnvollste. War wohl nicht so ... ;-((

    Kann ich das im Nachhinein physisch trennen, also lässt sich die gesamte Contao-Installation der Hauptseite per FTP in einen eigenen Unterordner verschieben, ohne dass man sie dabei zerschießt?
    Das darf auf gar keinen Fall passieren!!!
    Es gäbe dann im Rootordner /unterordner_hauptseite und den jetzt bereits vorhandenen /unterordner, beide jeweils mit einer Contao Installation.
    Dass ich die .htaccess der Hauptinstalltion anpassen müsste, ist mir klar.
    RewriteEngine On
    RewriteBase /unterordner_hauptseite

    Sonst noch was?

    Welche Schritte braucht es dann? Oder reicht allein diese Trennung und die von Spooky geschriebene Codeänderung der .htaccess, damit er die Shop-Site findet?
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]


    Ob das mit http://www.subdomain.meine-domain.de ohne SSL lief, weiß ich gar nicht, das hatte ich wohl nicht separat getestet.

    Die Aufrufmöglichkeit über http://meine-domain.de/unterordner/ wird nicht mehr benötigt, existiert aber, war bis gestern auch mit einem Verzeichnisschutz versehen, denn darüber lief der ganze Aufbau des Shops. Der ist im Prinzip fertig, inzwischen gefüllt mit Hunderten von Produkten. Der Kunde hätte ihn am liebsten seit gestern online ...
    Geändert von newbee (24.10.2017 um 13:55 Uhr)

  5. #5
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.130
    Partner-ID
    10107

    Standard

    Zitat Zitat von newbee Beitrag anzeigen
    Kann ich das im Nachhinein physisch trennen, also lässt sich die gesamte Contao-Installation der Hauptseite per FTP in einen eigenen Unterordner verschieben, ohne dass man sie dabei zerschießt?
    Solange du nichts dabei zerschießt, wird auch nichts zerschossen . Ich würde das außerdem lieber per SSH machen.



    Zitat Zitat von newbee Beitrag anzeigen
    Dass ich die .htaccess der Hauptinstalltion anpassen müsste, ist mir klar.
    RewriteEngine On
    RewriteBase /unterordner_hauptseite

    Sonst noch was?
    Nein, das darfst du nicht machen. Die RewriteBase ist relativ zum DocumentRoot. Der DocumentRoot wird ja auch für die Hauptdomain auf den Unterordner gesetzt. Daher bleibt auch die RewriteBase auf "/".


    Zitat Zitat von newbee Beitrag anzeigen
    Welche Schritte braucht es dann? Oder reicht allein diese Trennung und die von Spooky geschriebene Codeänderung der .htaccess, damit er die Shop-Site findet?
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
    Diese Änderung hat nichts damit zu tun. Das ist nur eine Weiterleitung auf HTTPS. Dein ursprüngliches Problem wird mit der schon erwähnten, sauberen Trennung der Contao Installationen gelöst.

  6. #6
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Wenn du die Hauptdomain auf den entsprechenden Unterordner leitest, dann muss da "RewriteBase /" stehen, der Unterordner taucht ja in der URL nicht auf. Genauso auch bei der Subdomain.

    Eigene Datenbank für die Subdomain ist natürlich klar. Es ist ja eine völlig unabhängige Installation. Nur sollte die nicht in einem Unterordner der Hauptseite stehen. Zumindest nicht physikalisch .

  7. #7
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    So noch mal zum physischen Trennen:
    Ich erstelle also eine neuen Unterordner /unterordner_hauptseite im Rootordner und verschiebe alle Ordner und Dateien außer dem bestehenden Unterordner /unterordner dort rein.
    Dann weise ich beim Hoster die Hauptdomain diesem neuen Unterordner zu. Diese Contao-Installation müsste dann dort einwandfrei weiterlaufen?!?
    Dein ursprüngliches Problem wird mit der schon erwähnten, sauberen Trennung der Contao Installationen gelöst.
    Und dann hoffen, dass das so ist!

  8. #8
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.078
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Genau so. Die Umstellung der Domain auf das Unterverzeichnis kann je nach Serverkonfiguration etwas dauern. Danach sollte die Hauptdomain im Unterverzeichnis ganz normal funktionieren.

  9. #9
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Statt 'verschieben' könnte 'kopieren' etwas besser sein. Also die bestehende Installation in einen unterordner_hauptseite kopieren und die Domain auf diesen Ordner Umstellen. Wenn dann alles läuft, dann kannst du die alte Installation entfernen und es bleiben nur deine beiden Unterordner übrig. Vorteil: die vorhandene Seite fällt nicht aus, egal ab wann der Server von der neuen Position ausliefert. Da beide aus Versionen auf derselben DB arbeiten, kann auch da nichts passieren.

  10. #10
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    Danke für den Tipp! Wede ich so machen. Bin noch nicht dazugekommen. Manchmal kommt das Leben dazwischen. Ich melde mich sobald es erledigt ist.

  11. #11
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    Das physische Trennen ist vollzogen. Die alte Site läuft!

    Das Problem ist aber immer noch nicht gelöst.
    Bei der https://subdomain.meine-domain.de/index.php/ erscheint nach wie vor die Contao-Fehlermeldung: „Seite nicht gefunden“.
    Bei der bisher funktioniernenden http://domain.de/unterordner erscheint jetzt "Objekt nicht gefunden". Muss ja, der Shop ist ja nicht mehr im Unterordner.

    So sieht die .htaccess jetzt aus:
    ##
    # URL rewriting
    ##
    <IfModule mod_rewrite.c>
    RewriteEngine On
    ##
    # Change the RewriteBase if your Contao installation is in a subdirectoy and
    # the rewrite rules are not working properly. Usage examples:
    #
    # RewriteBase /contao-3.0.0
    # RewriteBase /path/to/contao
    #
    # Depending on your server, you might have to remove the line entirely.
    ##
    RewriteBase /

    ##
    # Uncomment the following lines to add "www." to the domain:
    #
    # RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
    # RewriteRule (.*) http://www.example.com/$1 [R=301,L]
    #
    # Uncomment the following lines to remove "www." from the domain:
    #
    RewriteCond %{HTTP_HOST} ^www\.subdomain\.domain\.de$ [NC]
    RewriteRule (.*) http://subdomain.domain.de/$1 [R=301,L]

    #
    # Make sure to replace "example.com" with your domain name.
    ##
    ##
    # Umschreibung auf https
    RewriteCond %{HTTPS} off
    RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

    #
    ##

    Habe ich noch Fehler im Code?
    Müssen da noch mehr Zeilen hin?
    Muss ich in Contao doch noch was machen? Wobei ich derzeit gar nicht weiß, wie ich das Backend aufrufen kann ...
    edit: Den Link habe ich gefunden, aber die Seite ist ungestylt, läuft also ohne css. https://subdomain.domain.de/contao


    Habt Ihr noch Ideen?
    Geändert von newbee (25.10.2017 um 10:02 Uhr)

  12. #12
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.130
    Partner-ID
    10107

    Standard

    Warum schreibst du als URL https://subdomain.meine-domain.de/index.php/ ? Die URL sollte https://subdomain.meine-domain.de/ lauten. Außerdem solltest du URLs umschreiben in den Systemeinstellungen aktivieren und deiner Startseite den Alias index geben.

  13. #13
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    Beim Aufruf der https://subdomain.meine-domain.de/ kam immer https://subdomain.meine-domain.de/index.php/.

    Ich würde es gerne ändern, aber ich komme nicht mehr in Contao. ;-((
    Wenn ich hier https://subdomain.domain.de/contao/ (=ungestylte Seite) meine Zugangsdaten eingebe erscheint (gestyled) "Ungültiger Anfrage-Token, Was ist das Problem? Der Request-Token konnte nicht validiert werden.;...)

    edit: Wenn ich auf der auf der Anmeldeseite https://subdomain.domain.de/contao/ unten auf den Link "zum Frontend" klicke erscheint https://subdomain.domain.de/unterordner/ Error 404 Seite nicht gefunden.

    Wie komme ich wieder ins Backend?
    Was muss ich dort ändern, um das Frontend wieder zu sehen?
    Geändert von newbee (25.10.2017 um 10:46 Uhr)

  14. #14
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Das ist doch eine Contao 3.x? Da gibt es im config-Ordner eine Datei localpath.php (oder so, kann gerade nicht nachsehen). Darin steht vermutlich noch der Pfad auf den Unterordner. Ich meine, du kannst diese Datei einfach löschen und das Installtool neu aufrufen, dann wird sie neu erzeugt.

  15. #15
    Contao-Nutzer
    Registriert seit
    22.06.2012.
    Beiträge
    27

    Standard

    DANKE!!!!!!!!
    Das war´s. Es gibt eine pathconfig.php. Die habe ich runtergeladen, den /unterordner in / abgeändert und jetzt ist die Site da!

    Die nächsten Schritte sind sicher ein genaues Durchsehen der gesamten Site.
    Bis auf eine Google-map für die Selbstabholung ist eigentlich alles relativ, dürfte also keine Probleme machen.

    edit: Es ist alles okay. Sogar die map läuft ohne Eingriffe. Auch das Favicon ist da.
    Geändert von newbee (25.10.2017 um 12:51 Uhr)

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •