Interne Links für https anpassen

#1

Guten Tag

Ich sollte einen shop 4.9.6 auf https umstellen. Und komme nun nicht mehr weiter.

In der config habe ich bereits geändert:
$this->sShopURL = ‘[https://meinshop’; // eShop base url, required
$this->sSSLShopURL = null; // eShop SSL url, optional
$this->sAdminSSLURL = null; // eShop Admin SSL url, optional

In die .htaccess eingefügt:
RewriteEngine On
RewriteCond %{SERVER_PORT} !^443$
RewriteRule (.*) https://%{HTTP_HOST}/$1 [L]

Nun erscheint mir die Startseite zerschossen. Also keine css-Ünterstützung. Wenn ich den Seitenquelltext aufrufe, finde ich eine Menge interner Links, lautend: http:// meinshop/ … Ich nehme an, es müsste lauten: https://meinshop/ …

Auf der Suche nach diesen Links finde ich zum Beispiel in der start.tpl den Eintrag:

[{$promoCatTitle}]

Damit ist wahrscheinlich der Promo Slider gemeint.Im Seitenquelltext sehe ich drei Links, aber alle mit http.
Meine Frage: Gibt es eine zentrale Stelle, wo ich alle http auf https ändern kann?

Wenn nicht, wie verändere ich beispielsweise ich beispielsweise den $promo Link
damit es dann so lautet wie im Seitenquelltext, nur eben mit https

Oder in der header.tpl: befindet sich ein ähnlicher Link der so aussehen sollte
‘out/shop/img/…’.

Vielleicht ist das eine triviale Frage. Wäre trotzdem sehr dankbar für einen Hinweis.

#2

Kopierfehler?

#3

Ja ein Kopierfehler. Ich hatte mir die Zeile vorher auf LibreOffice kopiert und dann weiter übertragen. Den Schreibfehler habe ich zwar bemerkt und einen anderen auch noch, aber nichts gefunden, wie man nachträglich noch korrigieren kann.

#4

Ja, config.inc.php. Es gibt noch eine Stelle an der die http-url noch vorhanden sein könnte und das ist im Backend bei Sprachen. Hier sollte im Normalfall keine Url eingetragen sein. Außerdem ist es sinnvoll die https-url auch bei sSSLShopURL einzutragen.

#5

Danke für die Nachricht. In der config.inc.php habe ich es schon versucht, auch bei sSSLShopURL. Die internen Links bleiben jedoch nach wie vor bei http und somit wird css nicht angesprochen.
Im Backend unter Sprachen kann ich wohl die gewünschte Url eintragen, der ‚apeichern-Button‘ bleibt jedoch inaktiv.
Ich dachte, hier hätte ich die Lösung gefunden: https://www.syseleven.de/2012/12/14/hotfix-fur-oxid-ssl-problem/
Aber leider hat es bei mir mit einer weißen Seite geendet. Ich hoffe nicht, etwas falsch gemacht zu haben.

#6

Verzeichnis tmp geleert?

#7

Gute Frage. Das hatte ich wirklich vergessen. Dabei hatte ich es vorher noch gelesen. Heute muss ich leider aufhören. Aber werde morgen gleich in der Richtung weitermachen. Danke für den Hinweis.

#8

Wir hatten damit auch Probleme (4.10.4). Am Ende habe ich beide
$this->sShopURL und
$this->sSSLShopURL auf https gesetzt.
Damit haben alle Links die der Shop erzeugt https

In der htaccess wird entsprechend auch alles nach https umgesetzt.
RewriteEngine On
RewriteBase /
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www.gebraucht-schmuck.com$ [NC]
RewriteRule ^(.*)$ https://gebraucht-schmuck.com/$1 [R=301,L]
Gruß

#9

Da sollte ja auch nichts eingetragen sein. Das bei syseleven betrifft nur EE. Naheliegendste Erklärung: config.inc.php ist noch schreibgeschützt und deine Änderungen wurden nicht übernommen.

#10

Hallo, bin wieder da.Danke für die vielen Ratschläge. Alles versucht, tmp geleert und so weiter,leider erfolglos. Nun versuche ich noch einmal den Hotfix von Sysseven. Ich bin mir aber nicht sicher, ob ich alles richtig gemacht habe. Die Beschreibung lautet:

==Installation OXID eShop 4.6.0==

  • Copy contents of folder “copy_this” to the document root of your OXID eShop installation.
  • Delete the contents of the tmp directory.
  • Activate module under Extensions > Modules.

Der Inhalt des Folders „copy_this“ sieht so aus:

copy_this => modules => sm_contentcachesslfix

Somit habe ich den Ordner ‚sm_contentcachesslfix‘ in den vorhandenen Ordner vom Oxid-Shop ‚Modules‘hineinkopiert. Dann tmp gelöscht.

Sodann in die functions.php, die sich innerhalb des Ordners ‚Modules‘ befindet, den Inhalt der beiliegenden changelog.txt kopiert:

==1.0.1==

  • fixed readme ==1.0==
  • Initial release of module

Nachdem jeweils eine weiße Seite das Ergebnis ist, muss ich da irgendwas falsch gemacht haben?

#11

‘Das bei syseleven betrifft nur EE.’

Sorry, habe ich übersehen. Somit ist meine letzte Post hinfällig.

#12

Ich glaube es nicht. Nun funktioniert es doch noch.

Habe es schon einmal so, wie von heinz.klauke beschrieben gemacht, aber ohne ‘www’.
Jetzt habe ich in der htaccess die ‘www’ erzwungen und nun funktioniert es.

Vielen Dank an alle, die sich an meinem Problem beteiligt hatten…