Unterschiede zwischen den Revisionen 12 und 50 (über 38 Versionen hinweg)
Revision 12 vom 2008-12-12 00:00:45
Größe: 5192
Autor: anonym
Kommentar:
Revision 50 vom 2022-11-20 13:37:23
Größe: 0
Autor: phil
Kommentar: veraltet
Gelöschter Text ist auf diese Art markiert. Hinzugefügter Text ist auf diese Art markiert.
Zeile 1: Zeile 1:
[[TableOfContents]]

= Drupal =
 * [http://drupal.org drupal.org]
 * DrupalModule

== Cronjobs ==
Drupal kann durch Cronjobs Newsfeeds holen, nach Updates suchen usw.. Hier bietet sich entweder das Drupal Modul ''poormanscron'' an oder wie bei systemausfall ein Script, das in cron.hourly steht mit folgendem Inhalt:
{{{
#!/bin/sh
wget -q -O - https://<meine.drupal.url>/cron.php
}}}

== Development, Performance ==
Mit dem Modul ''devel'' lässt sich gut nachvollziehen, wieviel Datenbankzugriffe eine erstellte Seite macht und wieviel Speicher sie benötigt. (Vorsicht das verlangsamt ungemein!)

= Drupal Multiseite Installation =
== folgende Schritte legen eine neue Domain bzw. Unterseite an ==
 * passenden URL Eintrag in webproxy setzen
 * DB-Nutzer + Datenbank anlegen
  * phpmyadmin dazu starten (a2ensite phpmyadmin; apache2ctl graceful)
  * neuen Nutzer erstellen sollte mit drupal_ beginnen z.B. "drupal_moewenshiet", dann bleibt eine Multisiteinstallation in einer großen DB übersichtlich
  * Hostzugriffe über das Textfeld begrenzen
  * Passwort generieren und merken ;)
  * "Erstelle eine Datenbank mit gleichem Namen und gewähre alle Rechte" auswählen
  * keine globalen Rechte vergeben
  * phpmyadmin (a2dissite phpmyadmin; apache2ctl graceful)
 * in der Apacheconfig der entsprechenden Domain (siehe sites-available) die URL auf die Drupal Documentroot verweisen
 * in Drupal das Verzeichnis sites/default kopieren auf den Namen der neuen URL (Slashes werden zu Punkten)
  * !http://subdomain.systemausfall.org/moewenshiet -> .../sites/subdomain.systemausfall.org.moewenshiet
  * !http://www.moewenshiet.foo -> .../sites/www.moewenshiet.foo
 * in der Datei .../sites/moewenshiet.../settings.php
  * den Parameter ''$db_url'' mit den DB Zugangsdaten der neuen Site füttern
  * ''$base_url'' auch entsprechend anpassen
 * für die neue Seite das install.php Script aufrufen (z.B. !http://subdomain.systemausfall.org/moewenshiet/install.php)
  * die Formularfelder ausfüllen, dann wird der Adminuser angelegt und die DB mit Tabellen gefüllt
 * das war's auch schon

== Module und Themes ==
Bei einer Multisites Installation liegen zusätzliche Module und Themes im Verzeichnis ''.../sites/all/[modules|themes]''.
Während eines Upgrade sollten diese Module in den jeweiligen Multisites deaktiviert und anschließend wieder aktiveirt werden.

= Drupal Core Update einspielen (ohne svn/cvs) =
== Vorarbeiten ==
 * internes Backup machen
 * evtl. noch per Hand ein ''mysqldump'' der Datenabnk anstoßen
 * neuen Drupal-Core nach /data/Drupalsoftware runterladen
  * nach /data/drupal-x.x entpacken
  * chown -R www-data. /data/drupal-x.x
 * UPGRADE.txt lesen
== Update ==
 * als Admin anmelden und die Seite in den Wartungsmodus versetzen
  * Während der folgenden Schritte nicht das Browserfenster schließen, damit die Anmeldung beim Update aktiv bleibt!
 * Änderungen und zusätzliche Dateien aus der alten Drupalroot in die neue übernehmen. Das sind:
  * /modules/ldap...
  * /profiles/translations
  * /sites/
  * .htaccess und favicon.ico
 * im neuen Drupalroot sites/default/settings.php:
  * $update_free_access = TRUE; setzen
 * symbolishen Link unter /var/www auf neue Drupalroot setzen; ''apache2ctl graceful''
 * $URL/update.php aufrufen (läuft jetzt mit dem php Code des neuen Drupal Cores)
  * Coremodul Updates durchführen (einfach durch die Seite klicken..)

== Aufräumen ==
 * $update_free_access = FALSE; setzen
 * Wartungsmodus ausschalten
 * veraltete, unbenutzte Module/Themes löschen

 * Archive für aktualisierte Module und Themes im neuen Drupalroot entpacken und die alten damit ersetzen

= Drupal Core Update einspielen (mit svn/cvs) =
 * alle Drupalinstanzen sind im svn hinterlegt, die aktuelle Seite läuft immer in ''trunk'', ältere versionen liegen in ''tags''
 * der Code für Drupal wird per cvs geholt
 * damit vereinfacht sich das Update etwas und frühere Versionen sind leichter wiede rekonstruierbar
== Ablauf ==
 * Seiten in Offline-Modus schalten
 * DB Backup anlegen
 * aktuellen trunk taggen und verschieben:
{{{
svn move trunk tags/drupal-6.6
}}}
 * Code für Drupal 6.7 holen (in trunk):
{{{
cvs update -r DRUPAL-6-7 -dP
}}}
 * alle geänderten und zusätzlichen Dateien aus tags in trunk kopieren
  * themes, modules, translation
 * Seite online schalten

= Drupal Module aktualisieren =
Mit ''drush'' (DRUpal SHell) lassen sich installierte Module bequem per ssh aktualisieren. Wenn bei Multisite Installationen drush in jeder Site installiert und aktiviert wurde, spart das 'ne Menge Download Gewusel.

== einmalige Vorbereitung ==
 * Evtl. musst du vorher in /etc/php5/cli/php.ini (für commandline php scripte) das Speicherlimit hochstellen.
 * cvs wird für die Moduldownloads gebraucht

== Updates ==
 * Backup der DB und des Drupal Verz. anlegen!
 * in apt-get Manier: {{{
cd /var/www/drupal
./sites/all/modules/drush/drush.php -l my.fancy.site.org pm refresh
./sites/all/modules/drush/drush.php -l my.fancy.site.org pm update
}}}
 * in settings.php Updates erlauben, dann update.php im Browser ausführen

Creative Commons Lizenzvertrag
This page is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.