Umbenennen von /contenido/ ?
-
- Beiträge: 503
- Registriert: Do 6. Apr 2006, 01:40
- Kontaktdaten:
Umbenennen von /contenido/ ?
Ich habe gerade die Idee gehabt, das Verzeichnis /contenido/ umzubenennen, müsste ich dann nicht einfach nur die config.php vom Mandanten entsprechend abzuändern. Kommt es dadurch evtl. zu Problemen?
Ειμαστε στη μεση απο κατι...
-
- Beiträge: 3626
- Registriert: Di 12. Okt 2004, 20:00
- Wohnort: Voerde (Niederrhein)
- Kontaktdaten:
Das könnte man natürlich machen, dafür muss man aber auch mindestens die "contenido/includes/config.php" anpassen. Dabei definitiv folgende Pfade:
Außerdem
in der "contenido/includes/config.path.php". Wenn das "contenido" aber in irgendwelchen Klassen, Modulen oder Plugins mal direkt angegeben wird, wird dir das einen Strich durch die Rechnung machen. Deshalb: Änderungen auf eigene Gefahr.
Dann besteht natürlich die Frage nach dem Sinn. Wenn es um das "Verstecken" des Backends geht, kann man das mit Domains, die direkt auf die Mandantenordner und auf das Backend zeigen, evtl. einfacher lösen. Z.B.:
Code: Alles auswählen
/* The root server path to the contenido backend */
$cfg['path']['contenido']
/* The server path to the desired WYSIWYG-Editor */
$cfg['path']['wysiwyg']
/* The server path to all WYSIWYG-Editors */
$cfg['path']['all_wysiwyg']
Code: Alles auswählen
$cfg['path']['contenido_html']
Dann besteht natürlich die Frage nach dem Sinn. Wenn es um das "Verstecken" des Backends geht, kann man das mit Domains, die direkt auf die Mandantenordner und auf das Backend zeigen, evtl. einfacher lösen. Z.B.:
Code: Alles auswählen
Mandant 1: http://www.domain1.de
Mandant 2: http://www.domain2.de
Backend: http://meintollesbackend.domain3.de
@Contenider
Die Variante mit dem Hinzufügen von weiteren Servernamen zu einer vorhandenen oder neuen Domain kann ich aus eigener Erfahrung nur empfehlen. Folgende Dinge solltest Du auf jeden Fall im Auge behalten:
1.) Wähle einen Servernamen, der nichts mit contenido zu tun hat (Sicherheitsaspekt)
2.) Platziere in dem Verzeichnis eine robots.txt mit folgendem Inhalt:
4.) Das nächste Contenido-Update schlägt fehl, da es sich nur teilweise Informationen aus der "config.php" holt
Punkt 4.) kann man Umschiffen, wenn Du ein Backup der Originalpfadangaben als "config.bak.php" (bitte nur php-Dateiendungen benutzen, sonst kann jeder Deine DB-Passwörter beim "Download" lesen) anlegst, die Du dann kurz vor dem Contenido-Update wieder aktivierst. Parallel dazu mußt Du das geänderte Contenidoverzeichnis in das Verzeichnis der ursprünglichen Installation verschieben (auf dem Server kostet das kein Traffic, hängt aber vom FTP-Programm ab, wie es das händelt. Mit Telnet-Console geht es auf jeden Fall effektiv ohne Datentransfer)
Ich habe bisher keine Erweiterungen eingesetzt, die wegen der Änderungen fehlschlugen. Selbstverständlich achte ich persönlich genau deshalb auf die Benutzung der vorhandenen Contenido-Umgebungsvariablen in eigenen Projekten.
Im nachfolgenden Beispiel habe ich alle Pfadangaben aus der "config.php" zitiert, die bei mir auch noch dynamisch aufgebaut werden, weil der Provider schon mal die Mountpoints der Webspacepfade geändert hat. (Ohne mich zu fragen
)
Zusätzlich, und entgegen den Angaben von @Dodger77, ist bei mir und auch bei Dir eine weitere Datei "config.local.php" zu ändern bzw. anzulegen. (Nicht in der Originaldatei "config.path.php" ändern!) Die Datei "config.local.php" wird erst nach der anfänglichen contenido-Initialisierung aufgerufen und kann und soll dort noch Modifikationen der Contenido-Variablen vornehmen.
config.php
config.local.php
Serverpfade
Ich hoffe die Ausführungen helfen, ein wenig Licht in die Verwendung der Servervariablen zu bringen.
Die Variante mit dem Hinzufügen von weiteren Servernamen zu einer vorhandenen oder neuen Domain kann ich aus eigener Erfahrung nur empfehlen. Folgende Dinge solltest Du auf jeden Fall im Auge behalten:
1.) Wähle einen Servernamen, der nichts mit contenido zu tun hat (Sicherheitsaspekt)
2.) Platziere in dem Verzeichnis eine robots.txt mit folgendem Inhalt:
- User-agent: *
Disallow: /
4.) Das nächste Contenido-Update schlägt fehl, da es sich nur teilweise Informationen aus der "config.php" holt
Punkt 4.) kann man Umschiffen, wenn Du ein Backup der Originalpfadangaben als "config.bak.php" (bitte nur php-Dateiendungen benutzen, sonst kann jeder Deine DB-Passwörter beim "Download" lesen) anlegst, die Du dann kurz vor dem Contenido-Update wieder aktivierst. Parallel dazu mußt Du das geänderte Contenidoverzeichnis in das Verzeichnis der ursprünglichen Installation verschieben (auf dem Server kostet das kein Traffic, hängt aber vom FTP-Programm ab, wie es das händelt. Mit Telnet-Console geht es auf jeden Fall effektiv ohne Datentransfer)
Ich habe bisher keine Erweiterungen eingesetzt, die wegen der Änderungen fehlschlugen. Selbstverständlich achte ich persönlich genau deshalb auf die Benutzung der vorhandenen Contenido-Umgebungsvariablen in eigenen Projekten.
Im nachfolgenden Beispiel habe ich alle Pfadangaben aus der "config.php" zitiert, die bei mir auch noch dynamisch aufgebaut werden, weil der Provider schon mal die Mountpoints der Webspacepfade geändert hat. (Ohne mich zu fragen

Zusätzlich, und entgegen den Angaben von @Dodger77, ist bei mir und auch bei Dir eine weitere Datei "config.local.php" zu ändern bzw. anzulegen. (Nicht in der Originaldatei "config.path.php" ändern!) Die Datei "config.local.php" wird erst nach der anfänglichen contenido-Initialisierung aufgerufen und kann und soll dort noch Modifikationen der Contenido-Variablen vornehmen.
config.php
Code: Alles auswählen
<?php
// Ausschnitt aus config.php (HerrA)
global $cfg;
//'/mnt/web1/52/30/12345678/htdocs';
$provider_root_dir = $_SERVER["DOCUMENT_ROOT"].'/';
// servername.domain1.de
$my_contenido_hostname = 'http://'.$_SERVER["HTTP_HOST"].'/';
/* The root server path to the contenido backend */
$cfg['path']['contenido'] = $provider_root_dir.'contenido/';
/* The web server path to the contenido backend */
$cfg['path']['contenido_fullhtml'] = $my_contenido_hostname;
/* The root server path where all (?) frontends reside */
$cfg['path']['frontend'] = $provider_root_dir.'de.domain1/cms/';
/* The root server path to the conlib directory */
$cfg['path']['phplib'] = $provider_root_dir.'contenido/conlib/';
/* The root server path to the pear directory */
$cfg['path']['pear'] = $provider_root_dir.'contenido/pear/';
/* The server path to the desired WYSIWYG-Editor */
$cfg['path']['wysiwyg'] = $provider_root_dir.'contenido/external/wysiwyg/tinymce2/';
/* The web path to the desired WYSIWYG-Editor */
$cfg['path']['wysiwyg_html'] = $my_contenido_hostname.'external/wysiwyg/tinymce2/';
/* The server path to all WYSIWYG-Editors */
$cfg['path']['all_wysiwyg'] = $provider_root_dir.'contenido/external/wysiwyg/';
/* The web path to all WYSIWYG-Editors */
$cfg['path']['all_wysiwyg_html'] = $my_contenido_hostname.'external/wysiwyg/';
// DB-Config u. weitere
unset($provider_root_dir);
unset($my_contenido_hostname);
?>
Code: Alles auswählen
<?php
/******************************************
/* File: config.local.php
/* Project: Contenido 4.6.23
/* Description: .
/* .
/*
/* Author: HerrA
/* Created: Fri Aug 17 2007 19:48:34 GMT+0100
/* Modified: Fri Aug 17 2007 19:55:30 GMT+0100
/*
******************************************/
global $cfg;
/* IMPORTANT! Put your modifications into the file "config.local.php"
to prevent that your changes are overwritten during a system update. */
$cfg['path']['contenido_html'] = '/';
?>
Code: Alles auswählen
*Serverpfade
/mnt/web1/52/30/12345678/htdocs/contenido
*conlib wurde unterhalb von contenido-Stamm verschoben
/mnt/web1/52/30/12345678/htdocs/contenido/conlib/
/mnt/web1/52/30/12345678/htdocs/contenido/external/wysiwyg/
/mnt/web1/52/30/12345678/htdocs/contenido/external/wysiwyg/tinymce2/
/mnt/web1/52/30/12345678/htdocs/contenido/pear/
*Mandantenpfad
/mnt/web1/52/30/12345678/htdocs/de.domain1/cms/
*Contenido Backend Login
http://servername.domain1.de/
*Verweis auf contenido-Bibliotheken
http://servername.domain1.de/external/wysiwyg/tinymce2/
http://servername.domain1.de/external/wysiwyg/
Grüße
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen
-
- Beiträge: 503
- Registriert: Do 6. Apr 2006, 01:40
- Kontaktdaten:
Gut dass Du das erwähnst, 1und1 plant nämlich ein Serverupdate und möglicherweise passiert mir dann das Gleiche.die bei mir auch noch dynamisch aufgebaut werden, weil der Provider schon mal die Mountpoints der Webspacepfade geändert hat. (Ohne mich zu fragen Shocked )
Danke für Die ausführliche Beschreibung.
Ειμαστε στη μεση απο κατι...
Gern geschehen!
Noch ein Nachsatz zum Konstrukt: "$_SERVER["HTTP_HOST"]". Die Servervariable liefert die Hostdomain der aufgerufenen Seite und sollte mit der Domain übereinstimmen, in der das Backend läuft. Wenn man mehrere Mandanten in verschiedenen Domains hat, wird diese Variable mit deren Domain besetzt. Die Nebenwirkungen habe ich noch nicht getestet. Da der Mandant aber keine "HTTP"-Aufrufe in das Contenido-Backend machen sollte (er müßte sich bei PHP auch authentifizieren, bei Images aber nicht), rechne ich nicht mit Nebenwirkungen.
Auf der anderen Seite kann man eine "config.php" dadurch recht problemlos auf unterschiedliche getrennte Installationen loslassen. (DB-Connection anpassen)
Noch ein Nachsatz zum Konstrukt: "$_SERVER["HTTP_HOST"]". Die Servervariable liefert die Hostdomain der aufgerufenen Seite und sollte mit der Domain übereinstimmen, in der das Backend läuft. Wenn man mehrere Mandanten in verschiedenen Domains hat, wird diese Variable mit deren Domain besetzt. Die Nebenwirkungen habe ich noch nicht getestet. Da der Mandant aber keine "HTTP"-Aufrufe in das Contenido-Backend machen sollte (er müßte sich bei PHP auch authentifizieren, bei Images aber nicht), rechne ich nicht mit Nebenwirkungen.
Auf der anderen Seite kann man eine "config.php" dadurch recht problemlos auf unterschiedliche getrennte Installationen loslassen. (DB-Connection anpassen)
Grüße
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen
Sorry contenider, eine Nebenwirkung ist mir eingefallen, weil ich die Funktion selten benutze, leider zu spät. Die "$_SERVER["HTTP_HOST"]"-Variable mußt Du doch durch eine Konstante ersetzen. Sämtliche Insite-Editing-Komponenten greifen über die URL auf die "include.backendedit.php" zu. Seltsamerweise ist die beim Aufruf aus dem /external/backendedit/front_content.php aber leer und schlägt fehl.
Code: Alles auswählen
$form = new UI_Table_Form("editcontent", $cfg["path"]["contenido_fullhtml"].$cfg["path"]["includes"]."include.backendedit.php");
Grüße
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen
HerrA
______________________________
Bitte nur Forum für Kontakte nutzen