Default-Webseiten für neue Webs

BjoernHH

New Member
Hallo,
ich bin gerade dabei mich in ISPConfig reinzuarbeiten, unser alter Server lief unter SysCp.
Da wir bisher die SysCp-Datenbank per ODBC aus einer eigenen Access-Anwendung füllen und dieses Konzept auch für ISPConfig weiter verwenden wollen steht da einige Arbeit im Raum :)

Was mir im Moment noch fehlt ist eine Möglichkeit, dass bei einem neuen Kunden/Web bei der Anlage gleich Dateien in sein neues Web-Verzeichnis kopiert werden. Die Dateien sind abhängig von seiner Kundengruppe.
Als Kundengruppenfeld wollte ich client.company_id verwenden, meine Frage nun:
Beim Kopieren von Dateien in sein neues Web-Verzeichnis, liege ich da in der apache2_plugin.inc.php im Bereich
//* Copy the web skeleton files only when there is no index.ph or index.html file yet
if(!file_exists($data['new']['document_root'].'/'.$web_folder.'/index.html') && !file_exists($data['new']['document_root'].'/'.$web_folder.'/index.php')) {
mit meinem
exec('cp -a /Irgendwas/templates/'.$kdgr.'/* '.escapeshellcmd($data['new']['document_root']).'/' . $web_folder . '/'));
ungefähr richtig oder gibt es eine cleverere Lösung für das Problem.
(Nachteil ist ja, wenn ich das in der apache2_plugin.inc.php ändere wird es bei ev. Updates von ISPConfig wieder überschrieben)
Mit Boardmitteln habe ich da nix gefunden und auch im Doku-PDF steht dazu nix.

Viele Grüße
Björn
 

Till

Administrator
Nicht das bestehende apache plugin ändern sondern ein kleines eigenes plugin anlegen dass Du einfach zusätzlich an den "web_domain_insert" event bindest. Schau mal ganz oben ins apache plugin, onLoad. Der Name deines plugins sollte im alphabet hinter dem apache plugin sein, damit es danach aufgerufen wird und es das web schon gibt, wenn Du Dateien rein kopierst.
 

BjoernHH

New Member
Also sowas wie
$app->plugins->registerEvent('web_domain_insert', $this->plugin_name, 'MeinPlugin');
oben zufügen und dann komplett als eigene Funktion unten ans apache plugin anhängen?
Vielen Dank, probiere ich so aus ... damit hält sich der Änderungsaufwand beim Update ja auch in Grenzen :)
 

Till

Administrator
Nicht ganz, denn das wäre ja wieder nicht update sicher. Und mit der von mir vorgeschlagenen Variante ist gernichts bei einem update zu machen. Du erstellst eine komplett neue eigene Datei im plugins-available folder und aktivierst sie durch symlink im plugins-enabled folder und in Deinem eigenen plugin hast Du nur Deinen code.
 

Werbung

Top