problem bei unterschiedlichen domains frontend backend
problem bei unterschiedlichen domains frontend backend
wie ja größtenteils mittlerweile bekannt ist, kommt es dabei zu javascript fehlermeldungen -> zb: zugriff verweigert
ich hab mir das system mittlerweile so hingetrickst das ich so alle links relativ in der db stehen habe... -> CMS_IMG, CMS_LINK
jetzt mal ne allgemeine frage:
sagen wir mal ich hab folgende server konstellation...
http://service/contenido/ * (für das backend)
http://service/client1/ * (für das frontend)
der client1 muss aber auch via http://client1/ erreichbar sein...
wie krieg ich das am besten hin ?
vermutlich brauche ich noch nen wert bei administration/mandanten...
könnte es funktionieren im backend bei content/artikel/editor den pfad auf http://service/client1/ zu verbiegen ? und im frontend http://client1/ zu belassen ?
jetzt weiss ich aber nicht genau wie der pfad bei http://service/client1/config.php zu contenido verwendet wird...
wenn dieser nur via include verwendet wird sollte ja alles laufen oder ?
falls nicht kann ich mir diesen änderungsversuch sparen...
ich hab mir das system mittlerweile so hingetrickst das ich so alle links relativ in der db stehen habe... -> CMS_IMG, CMS_LINK
jetzt mal ne allgemeine frage:
sagen wir mal ich hab folgende server konstellation...
http://service/contenido/ * (für das backend)
http://service/client1/ * (für das frontend)
der client1 muss aber auch via http://client1/ erreichbar sein...
wie krieg ich das am besten hin ?
vermutlich brauche ich noch nen wert bei administration/mandanten...
könnte es funktionieren im backend bei content/artikel/editor den pfad auf http://service/client1/ zu verbiegen ? und im frontend http://client1/ zu belassen ?
jetzt weiss ich aber nicht genau wie der pfad bei http://service/client1/config.php zu contenido verwendet wird...
wenn dieser nur via include verwendet wird sollte ja alles laufen oder ?
falls nicht kann ich mir diesen änderungsversuch sparen...
*** make your own tools (wishlist :: thx)
Meine Erfahrungswerte zu diesem Thema:
Das Backend von Contenido muß komplett auf einer einzigen Domain bleiben, auch für alle Mandanten (dies gilt insbesondere für die URL-Angabe, wenn man den Mandanten bearbeitet/anlegt). Dann vermeidet man die blöden "Zugriff verweigert", die unweigerlich bei den diversen WYSIWYG-Editoren auftreten.
Da Contenido aber zumindest bei mir komplett relative Pfade verwendet (bzw. man es immer so hindrehen kann, dass dies geschieht - man ist schließlich Herr im eigenen Haus, oder), ist es problemlos möglich, jedem einzelnen Mandaten für die Öffentlichkeit einen beliebigen anderen VirtualHost zu verpassen. Dieser kann überdies direkt auf dem Unterverzeichnis liegen, so dass man sich auch nicht mit irgendwelchen Zusatzpfadangaben rumärgern muß.
Also in Kurzform:
http://contenido-domain/contenido/index.php -> Login
http://contenido-domain/mandant/... -> Mandantenseiten-URL fürs Bearbeiten
http://mandantendomain/... -> Live-Ansicht (die index.php dort leitet direkt zur Contenido-Startseite weiter)
Das Backend von Contenido muß komplett auf einer einzigen Domain bleiben, auch für alle Mandanten (dies gilt insbesondere für die URL-Angabe, wenn man den Mandanten bearbeitet/anlegt). Dann vermeidet man die blöden "Zugriff verweigert", die unweigerlich bei den diversen WYSIWYG-Editoren auftreten.
Da Contenido aber zumindest bei mir komplett relative Pfade verwendet (bzw. man es immer so hindrehen kann, dass dies geschieht - man ist schließlich Herr im eigenen Haus, oder), ist es problemlos möglich, jedem einzelnen Mandaten für die Öffentlichkeit einen beliebigen anderen VirtualHost zu verpassen. Dieser kann überdies direkt auf dem Unterverzeichnis liegen, so dass man sich auch nicht mit irgendwelchen Zusatzpfadangaben rumärgern muß.
Also in Kurzform:
http://contenido-domain/contenido/index.php -> Login
http://contenido-domain/mandant/... -> Mandantenseiten-URL fürs Bearbeiten
http://mandantendomain/... -> Live-Ansicht (die index.php dort leitet direkt zur Contenido-Startseite weiter)
Das funktioniert zwar, ist aber m.E. nur ein schlechter Workaround - schließlich wollen die Kunden "ihre" Domain im Adressfeld des Browsers sehen.svenr hat geschrieben:Also in Kurzform:
http://contenido-domain/contenido/index.php -> Login
http://contenido-domain/mandant/... -> Mandantenseiten-URL fürs Bearbeiten
http://mandantendomain/... -> Live-Ansicht (die index.php dort leitet direkt zur Contenido-Startseite weiter)
www.log2e.com
Everybody else is just green.
Everybody else is just green.
base href ist schlecht da die stylesheets ignoriert werden die nachgeladen werden sollen..
wenn ich mal zeit habe versuche ich das ganze mal zu verbiegen...
wenn ich mal zeit habe versuche ich das ganze mal zu verbiegen...
*** make your own tools (wishlist :: thx)
siehe snapshot visual edit oder layout vorschau...
das externe stylesheet wird nicht eingebunden... selbes problemchen...
das externe stylesheet wird nicht eingebunden... selbes problemchen...
*** make your own tools (wishlist :: thx)
ähm, okay hast recht auf die idee wäre ich gar nicht gekommen...timo hat geschrieben:achja, das kann ich dir verraten, warum: Weil der base href-Tag nach der Stylesheet-Definition kommt. Ich hab das mal im CVS gelöst.
habs gerade mal eingebaut -> nicht schlecht
*** make your own tools (wishlist :: thx)
hab mir das jetzt ein wenig überlegt und bin zur folgender variante gekommen...
für diese aktion benötigt man jedoch unter administration/mandanten
ein weiteres eingabe feld um den internen bearbeitungspfad zu definieren...
in der tabelle con_client gibts noch das feld path (ist scheinbar immer leer)
das ich mal für diesen zweck heranziehen werde...
der nächste schritt ist ein ganz simpler...
in con_actions bei con_editart
definiere ich dann einfach als pfad den internen bearbeitspfad (wenn er gesetzt ist wird er verwendet -> ne art override)
wenn ich mich nicht ganz irre und ich hab folgende konstellation
backend liegt in http://backend/contenido/
und ich konfiguriere den client dann folgender massen:
Server-Pfad: e:/contenido_4.4.4/cms/
Web-Addresse: http://client1/
Edit-Pfad: http://backend/client1/ (entspricht den eingetragen wert der con_client path)
müsste es doch anstandslos laufen.
was meinst du dazu timo ?
für diese aktion benötigt man jedoch unter administration/mandanten
ein weiteres eingabe feld um den internen bearbeitungspfad zu definieren...
in der tabelle con_client gibts noch das feld path (ist scheinbar immer leer)
das ich mal für diesen zweck heranziehen werde...
der nächste schritt ist ein ganz simpler...
in con_actions bei con_editart
definiere ich dann einfach als pfad den internen bearbeitspfad (wenn er gesetzt ist wird er verwendet -> ne art override)
wenn ich mich nicht ganz irre und ich hab folgende konstellation
backend liegt in http://backend/contenido/
und ich konfiguriere den client dann folgender massen:
Server-Pfad: e:/contenido_4.4.4/cms/
Web-Addresse: http://client1/
Edit-Pfad: http://backend/client1/ (entspricht den eingetragen wert der con_client path)
müsste es doch anstandslos laufen.
was meinst du dazu timo ?
*** make your own tools (wishlist :: thx)
-
- Beiträge: 6284
- Registriert: Do 15. Mai 2003, 18:32
- Wohnort: Da findet ihr mich nie!
- Kontaktdaten:
Eventuell geht es sogar einfacher - einfach die front_content.php ins Backend legen und im Backend immer die front_content.php aus dem Backend holen - dann ist es egal, wo das Frontend liegt.
Was ich auch noch irgendwann vorhabe: Den Code der front_content.php ins Backend verschieben - das hat den Vorteil, daß man Updates einfacher gestalten kann (sobald man das Backend austauscht, sind auch alle Frontends up-to-date).
Was ich auch noch irgendwann vorhabe: Den Code der front_content.php ins Backend verschieben - das hat den Vorteil, daß man Updates einfacher gestalten kann (sobald man das Backend austauscht, sind auch alle Frontends up-to-date).
ich hab das gerade bei mir eingebaut... und die fehlermeldungen sind weg...
funktioniert wirklich perfekt...
ich hab einfach die function rereadClients
so geändert das das feld path mit ausgelesen wird und speichere das ganze in der variable $cfgClient[$client]["path"]["editpath"]
bei der änderung in der con_actions hab ich einfach am anfang bei der definierung von path folgendes verwendet
vorteil ist das ich das bestehende backend nicht mehr ändern muss.
unter systemeigenschaften wenn sich die pfade nicht decken könnte man noch einen hinweis auf die ergänzung des editpath machen... mir reicht diese lösung...
funktioniert wirklich perfekt...
ich hab einfach die function rereadClients
so geändert das das feld path mit ausgelesen wird und speichere das ganze in der variable $cfgClient[$client]["path"]["editpath"]
bei der änderung in der con_actions hab ich einfach am anfang bei der definierung von path folgendes verwendet
Code: Alles auswählen
if ($cfgClient[$client]["path"]["editpath"] == "" ) {
$path = $cfgClient[$client]["path"]["htmlpath"];
} else {
$path = $cfgClient[$client]["path"]["editpath"];
}
unter systemeigenschaften wenn sich die pfade nicht decken könnte man noch einen hinweis auf die ergänzung des editpath machen... mir reicht diese lösung...
*** make your own tools (wishlist :: thx)
Hallo,
könnte man mir (Anfänger) mal erklären, wie das genau geht das man von einer Domain auf einen Mandanten verweisen kann, so das die Adresse der Domain im Adressfeld des Browsers stehen bleibt??
Besonders die Lösung von Timo, wobei mich aber auch die andere Lösung interesieren würde.
Gruß
Christian
könnte man mir (Anfänger) mal erklären, wie das genau geht das man von einer Domain auf einen Mandanten verweisen kann, so das die Adresse der Domain im Adressfeld des Browsers stehen bleibt??
Besonders die Lösung von Timo, wobei mich aber auch die andere Lösung interesieren würde.
Gruß
Christian
ähm ? bei dem thread hier gings um was anderes.MegaBit hat geschrieben:könnte man mir (Anfänger) mal erklären, wie das genau geht das man von einer Domain auf einen Mandanten verweisen kann, so das die Adresse der Domain im Adressfeld des Browsers stehen bleibt??
backend und frontend müssen sich auf ein und den selben server befinden.
zb
http://www.myserver.com/contenido/ *backend
http://www.myserver.com/client1/ *frontend für mandant 1
http://www.myserver.com/client2/ *frontend für mandant 2
http://www.myserver.com/client3/ *frontend für mandant 3
das einzige was seitens provider gemacht werden muss ist , dass
http://www.client1.com/ auf das server verzeichnis von http://www.myserver.com/client1/ verweisst. du braucht eigentlich sonst nichts dabei tun. der provider kann das so einrichten (das ist keine weiterleitung)
*** make your own tools (wishlist :: thx)