WebsiteBaker Support (2.12.x) > Hilfe & Support (deutsch)
falscher Bildpfad im Frontend - gibt es eine einfache Lösung?
jacobi22:
Die Dateien hatte ich ja in der letzten Antwort genannt, aber ich denke, das kannst du ausschließen, denn das würde ja jeden Nutzer betreffen.
Ich bin mir recht sicher, das es sich um nicht übereinstimmende Pfade handelt, wie oben beschrieben
hgs:
Mit TeamViewer könnten wir lokal bei dir schauen :-)
Psp:
--- Quote from: jacobi22 on October 28, 2019, 02:46:21 AM ---Die Dateien hatte ich ja in der letzten Antwort genannt, aber ich denke, das kannst du ausschließen, denn das würde ja jeden Nutzer betreffen.
Ich bin mir recht sicher, das es sich um nicht übereinstimmende Pfade handelt, wie oben beschrieben
--- End quote ---
http://localhost/www/horoskope/
http://localhost/www/horoskope - config
kann es der fehlende Slash sein?
Hab auch Teamplayer installiert - aber noch nie benutzt, was soll ich tun?
LG
Rainer
jacobi22:
Mal noch zur Erklärung: Sinn und Zweck dieser SYSVAR-Geschichte ({SYSVAR:AppUrl.MediaDir}) ist es, in der Datenbank keine absoluten Pfade mehr zu haben, die später bei einem Umzug von Hand korrigiert werden müßten.
Beispiel: deine lokale Installation möchtest du nach Abschluß der Dinge dann sicher irgendwo online bringen. Früher war es dann notwendig, solche Pfade wie eben http://localhost/www/horoskope/ von Hand zu ersetzen mit dem Namen der neuen Domain online
Um das zu bewerkstelligen, dir diese Arbeit abzunehmen, gibt es diesen Filter "ReplaceSysvar", der immer aktiv ist. Er sucht in Modulen wie Wysiwyg im Quelltext nach der Adresse http://localhost/www/horoskope/ und ersetzt diese mit {SYSVAR:AppUrl.MediaDir}, dann wird der Inhalt gespeichert.
Ruft man die Seite dann im Frontend auf, läuft der gleiche Vorgang, nur umgekehrt, gesucht wird nun nach {SYSVAR:AppUrl.MediaDir} und das wird dann ersetzt mit http://localhost/www/horoskope/
Dieser Vorgang benötigt aber eine 100%ige Übereinstimmung, also absolut exakt.
Der erste Schritt funktioniert bei dir, was schlicht bedeutet, datei-technisch ist alles in Ordnung
Nun ist es so, das der Wysiwyg-Editor diesen Pfad selbst ermittelt und zusammenbaut, beim Auslesen im Frontend wird aber dann der Pfad aus der config.php benutzt. Besteht da ein Unterschied, sind es eben keine 100% mehr und die Ersetzung findet nicht statt.
Was mir noch fehlt in deiner Auflistung, ist der Pfad, wie er im Editor generiert wurde. Gehe dazu im Backend auf eine Seite mit Wysiwyg-Editor, füge ein Bild ein, wie du es gewohnt bist, schalte den Editor um auf Quelltext (vor dem Speichern!!) und kopiere ein Stück Code mit diesem Link, wie es hgs oben gemacht hat.
Und das Gleiche dann auch im Frontend. Die betroffene Seite anschauen, rechte Maustaste auf eine freie Stelle und dann auf "Zeige Quelltext" - hier findest du dann ähnlichen Code, halt mit dem {SYSVAR:AppUrl.MediaDir} drin
Und nur, um es mal gesagt zu haben: das mitgelieferte DefaultTemplate mag optisch nicht jedem gefallen, es ist aber vom Aufbau her so gebaut, das alles andere damit funktioniert. Es sollte also immer auch als Gegenprobe benutzt werden oder eben zum Abgucken, wie dies oder das gemacht wird
jacobi22:
--- Quote from: Psp on October 28, 2019, 11:35:02 AM ---http://localhost/www/horoskope/
http://localhost/www/horoskope - config
kann es der fehlende Slash sein?
--- End quote ---
Ist eher einer zuviel
Du arbeitest unter Xampp mit Ordner im htdocs-Verzeichnis, nicht etwa mit virtuellen Host's (deren Ordner frei bestimmbar wären). Das htdocs-Verzeichnis ist unter Xampp das oberste beschreibbare Verzeichnis, der sog. DocumentRoot)
Xampp fügt an diese Ordner einen Slash automatisch an, weil dann in diesen Ordner jeweils eine index.php gesucht und gefunden wird. Da dies index.php (bzw die festgelegte Startdatei wie index.htm, index.html usw) in der Konfiguration von Xampp festgelegt wurden, muß sie nicht geschrieben werden, sie wird intern hinzugefügt (analog der WB-Startseite, die ja auch einen anderen Real-Path hat)
Nun kommt es darauf an, wie der CKEditor diesen Pfad einliest. Während ein Browser einen doppelten Slash in der Adresse ignoriert, würde ein preg_replace() das im Code nicht mehr machen.
In der config.php soll die WB_URL ohne einen Slash am Ende angegeben werden. Weitere Verzeichnisse wie eben /media oder alle Links im Backend, bekommen diesen Slash dann vom WB-Code.
Ein einfacher Test für dich, wäre jetzt, in der config.php diesen Slash am Ende hinzuzufügen, schalte dann die betroffene Seite im Frontend an und kontrolliere dein Bild. Ist es da, kennst du die Ursache.
Ich persönlich würde jetzt aber nicht viel im Backend machen, da dieser (eigentlich falsche) Pfad dann auch in die Datenbank übernommen wird und das für alle Aktionen in allen Modulen. Es kommt zwar immer wieder vor, das sich jemand hier meldet deswegen, aber allein die Tatsache, das man deswegen anfragt, zeigt ja, das irgend etwas schief läuft.
Für Xampp empfehle ich die Benutzung von virtuellen Host's. Hört sich kompliziert an, ist aber recht einfach. Es gibt dir auch die Möglichkeit, deine Dateien an anderer Stelle zu speichern, z.b. auf einer anderen Partition. Ich habe dafür (mindestens) eine eigene Festplatte. Aktuell habe ich (gerade gezählt) 127 solcher Ordner unter Xampp, da wäre der Aufwand, all das zu verschieben, schon etwas höher. Die Vorteile sind zum einen gute Übersichtlichkeit, zum anderen eine sehr große Nähe zu einem Real Online Server, was Pfade und Berechtigungen betrifft.
Der Aufwand wäre auch nicht groß, die hosts-Datei erweitern und die virtuellen Hosts definieren unter Xampp, optional: die Ordner verschieben
Wenn Interesse an einem How-To, sag was
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version