Seite 1 von 2

problem bei unterschiedlichen domains frontend backend

Verfasst: Fr 2. Apr 2004, 11:53
von emergence
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...

Verfasst: Mo 5. Apr 2004, 01:08
von svenr
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)

Verfasst: Mi 14. Apr 2004, 09:59
von log2e
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)
Das funktioniert zwar, ist aber m.E. nur ein schlechter Workaround - schließlich wollen die Kunden "ihre" Domain im Adressfeld des Browsers sehen.

Verfasst: Mi 14. Apr 2004, 10:07
von timo
Ich habe mal mit dem Gedanken gespielt, das Frontend (zumindest die front_content.php) ins Backend zu verlagern...aber da müßte man dann auch einige URL-Rewrites machen (oder über base href die Basis-URL festlegen, damit auch alle Bilder geladen werden)...

Verfasst: Mi 14. Apr 2004, 10:18
von emergence
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...

Verfasst: Mi 14. Apr 2004, 10:21
von timo
emergence hat geschrieben:base href ist schlecht da die stylesheets ignoriert werden die nachgeladen werden sollen..
Bist du da sicher? Bei einem Kunden von uns haben wir den Newsletter mit base href gelöst, da waren auch Stylesheets drin...und das ging?

Verfasst: Mi 14. Apr 2004, 10:26
von emergence
siehe snapshot visual edit oder layout vorschau...
das externe stylesheet wird nicht eingebunden... selbes problemchen...

Verfasst: Mi 14. Apr 2004, 10:33
von timo
öhm, bei mir geht das...bin ich mir fast 100%ig sicher

Verfasst: Mi 14. Apr 2004, 11:01
von timo
emergence hat geschrieben:das externe stylesheet wird nicht eingebunden... selbes problemchen...
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.

Verfasst: Mi 14. Apr 2004, 11:19
von emergence
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.
ähm, okay hast recht auf die idee wäre ich gar nicht gekommen...
habs gerade mal eingebaut -> nicht schlecht

Verfasst: Mi 14. Apr 2004, 12:05
von emergence
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 ?

Verfasst: Mi 14. Apr 2004, 12:10
von timo
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).

Verfasst: Mi 14. Apr 2004, 12:27
von emergence
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

Code: Alles auswählen

if ($cfgClient[$client]["path"]["editpath"] == "" ) {
    $path = $cfgClient[$client]["path"]["htmlpath"];
} else {
    $path = $cfgClient[$client]["path"]["editpath"];
}
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...

Verfasst: Sa 8. Mai 2004, 18:39
von MegaBit
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

Verfasst: So 9. Mai 2004, 09:38
von emergence
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??
ähm ? bei dem thread hier gings um was anderes.

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)