Unterschiede zwischen den Revisionen 15 und 25 (über 10 Versionen hinweg)
Revision 15 vom 2007-01-29 11:02:48
Größe: 7895
Autor: anonym
Kommentar: Dateirechte
Revision 25 vom 2022-11-19 22:44:06
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:
||<tablestyle="float:right;"> '''Inhalt'''[[TableOfContents]] ||
= Was ist das hier =

Kurz und übersichtlich wird hier die Installation des Blogsystems [http://wordpress.org Wordpress] beschrieben. Einige Schritte beziehen sich explizit auf Debian, sind aber leicht auf andere Linux-Distributionen übertragbar.

= Vorraussetzungen =

Wordpress stellt nur geringe Anforderungen an dein System. Eine Debian Standardinstallation erweitert um apache, php und mysql reicht. Viele Webspaceprovider bringen die notwendige Software schon mit. Schau in die [http://wordpress.org/about/requirements/ detailierten Systemvorraussetzungen].

Wordpress ist in Debian stable noch nicht drin, deswegen musst du vorerst das Paket aus testing benutzen (siehe /etc/apt/sources.list). Um trotzdem alle abhängigen Pakete aus ''stable'' zu installieren, solltest du die Datei ''/etc/apt/apt.conf.d/50default-release'' mit folgendem Inhalt anlegen: {{{
APT::Default-Release "stable";
}}}

== Paket-Installation ==
In Debian-testing installierst du Wordpress mit der extra benötigten Software durch folgenden Befehl:
{{{
apt-get install wordpress mysql-server
}}}
Die apacheconfig-Frage nach "suexec" kannst du verneinen.

== Webserver (Apache2) ==

Der Webserver braucht kaum weitere Anpassungen, nur den Pfad des zukünftigen wordpress-Verzeichnisses (siehe Apache-Konfiguration !DocumentRoot).
Evtl. musst du das php Modul noch per Hand aktivieren:
{{{
a2enmod php4
}}}

== Datenbank (MySQL) ==

Schnell noch eine neue Datenbank anlegen. ''Die folgenden Schritte lassen sich auch bequem per [http://www.phpmyadmin.net phpmyadmin] bewerkstelligen.''
{{{
mysqladmin -p -u root password "ganzgeheim"
mysql -h localhost -u root -p
> create database wpdb;
> grant CREATE,INSERT,DELETE,UPDATE,DROP,ALTER,SELECT on wpdb.* to wordpress@localhost IDENTIFIED BY "3xfoo&5x8";
> FLUSH PRIVILEGES;
> EXIT;
}}}
Die Passworte solltest du in einzelnen mysql-Client-Konfigurationsdateien (z.B.: ''~/.my.cnf'') speichern: {{{
[mysqladmin]
user = root
password = phreaking_password
}}}
Anschliessend mit {{{chmod 0600 .my.cnf}}} die Rechte der Datei setzen.

= Wordpress =

Diese [http://codex.wordpress.org/Installing_WordPress Installationsanleitung] beschreibt die "famous 5-minute install" Variante.

Hier die wenigen Anpassungen der 5minute-Variante in grober Übersicht:
 * {{{cp /usr/share/wordpress/wp-config-sample.php /etc/wordpress/config-localhost.php}}}
  * darin die mysql zugangsdaten eintragen
  * die ''define('ABSPATH',...)''-Zeile entfernen
 * {{{ln -s config-localhost.php /etc/wordpress/config-PUBLICHOSTNAME.php}}}
 * Browser auf https://.../wp-admin/install.php steuern und den Anweisungen Folge leisten
 * Per webfrontend als admin anmelden und den domainnamen von http://bla:443 auf https:// umstellen
  * bei wp2.0 funktionierte das nur über phpmyadmin -> wp_options -> site_url
 * bevor du Permalinks aktivierst, kannst die entsprechende .htaccess Datei für www-data beschreibbar machen, dann erweitert sie wp automatisch

== Anpassungen ==

Einige optionale Änderungen:
 * wordpress in deutsch
  * de_DE.mo in wp-includes/languages kopiert
  * deutsches template installiert
  * in der ''/etc/wordpress/config-localhost.php'' die Sprache setzen
 * als admin unter options->miscellaneus file upload erlauben
 * ldap Authentifizierung
  * http://patcavit.com/2005/05/11/wordpress-ldap-and-playing-nicely/
  * http://www.weblogs.uhi.ac.uk/sm00ay/?p=45
 * Kontaktformular von ryanduff.net/projects/wp-contactform/
 * http://blog.blackdown.de/2005/05/18/securing-wordpress-admin-access-with-ssl/
 * Entlastung für den wp Server: [http://dev.wp-plugins.org/wiki/WP-Cache wp-cache]
  * Dabei werden die dynamischen php Seiten, nur einmal gerendert und anschließend als statisches html aus dem Cache serviert. Das erspart dem Webserver eine Menge unnötiger Rechenarbeit

== Upgrades ==
''!Bevor du weitermachst, kann dir ein frisches Backup des weblog umls einige Sorgenfalten ersparen.!''
Leider entzieht sich Wordpress etwas dem Standard Debian upgrade System. Via apt-get lässt sich die aktuelle WP Version installieren, allerdings gehen dabei eingebrachte Patches verloren. Da wir mehrere WP Instanzen benutzen musst du die WP Quellen kopieren, damit jeder Blog seinen eigenen Code hat.
{{{
apt-get update
apt-get install wordpress
cp /usr/share/wordpress /data/wp-[blog]-[neue_version]
}}}
In /data siehst du leicht, wie die einzelnen symbolischen Links angeordnet sind. Das im Netz sichtbare WP ist immer wp-[blog]. Nun reicht es aber nicht, den wp-[blog] Link von wp-[blog]-[alte_version] auf wp-[blog]-[neue_version] umzubiegen! Einige Schritte sind vorher noch notwendig:
 * In wp-[blog]-[neue_version] müssen ein paar Verzeichnisse und Dateien ausgetauscht werden. Du befindest dich jetzt in der kopierten, neuen WP Codebasis (also z.B. /data/wp-foo-2.1.0):
 * Verlinke wp-config.php nach /data/wordpress/settings.d/[blog_url].php
 * Verlinke die .htaccess nach /data/wp-[blog]-custom-data/.htaccess
 * Verlinke content/uploads-[blog] nach /data/wp-[blog]-custom-data/content/uploads-[blog]
 * Verlinke content/themes/wp-[blog] nach /data/wp-[blog]-custom-data/content/themes/wp-[blog]
  * Das aktuelle WP default theme sollte drinbleiben, falls was mit dem selbstgebauten theme nicht hinhaut.
 * Kopiere die plugins aus /data/wp-[blog]-custom-data/content/plugins/ nach content/plugins/
  * Schau vorher ob es von den Plugins neue Versionen gibt. Ist das der Fall kopiere diese nach ..custom-data und in das aktuelle Pluginverzeichnis. Achte darauf, dass einige Plugins gepatched werden müssen, damit sie korrekt laufen. Bei uns ist das bei eventcalendar3 der Fall. Hier hilft nur, die Doku des Plugins weiter (siehe unten).
 * Achte darauf, dass alle Verz. & Dateien ''www-data'' gehören.
 * Melde dich als Admin an und deaktivere alle Plugins (du agierst jetzt noch mit der alten WP Codebase)
  * damit bleibt die neue WP Version nutzbar, auch wenn Plugins dort nicht laufen sollten
 * Setze jetzt erst den /data/wp-[blog] Link um! (also von wp-[blog]-[alte_version] auf wp-[blog]-[neue_version]).
 * Sicherheitshalber starte ich den apache meist neu: ''apache2ctl graceful''
 * Steuer nun den Loginbereich des Blogs (/wp-admin) oder direkt /wp-admin/upgrade.php an. In beiden Fällen solte eine Meldung erscheinen, dass die Datenbank nicht aktuell ist. Hier brauchst du nur zweimal auf weiter klicken und die Tabellen werden aktualisiert.
 * Aktiviere die Plugins nacheinander wieder und sieh ob alles wie erwartet läuft.
Falls noch was unklar ist, lies die [http://codex.wordpress.org/Upgrading_WordPress offizielle Wordpress Upgrade Anleitung].

=== Event Calendar ===
[http://blog.firetree.net/2005/07/18/eventcalendar-30/ EventCalendar] läuft in Wordpress 2.x bislang nur mit einer Änderung in der Datei: ''wp-includes/classes.php''. Dies ist etwas ärgerlich, da hier lästiges patchen per Hand anfällt. Der Patchvorgang ist in der README Datei des Plugins beschrieben und auch im [http://blog.firetree.net/2005/07/18/eventcalendar-30/ EventCalendar Blog].


= weitere Hilfe =
 * [http://wordpress.de/ ausführliche deutsche Wordpress Seite]
 * [http://codex.wordpress.org offizielles englisches Handbuch zu Wordpress]
 * [http://codex.wordpress.org/Template_Tags Wordpress code API]

= Hinweise =
 * Wordpress ist für mehrere autonome Webseiten relativ ungeeignet. Dazu müssten auf dem Server jeweils eigene Instanzen installiert werden. Es gibt aber einige Projekte, die das Problem in Angriff genommen haben. [http://codex.wordpress.org/Installing_Multiple_Blogs WP Multiple Blogs]
 * Die Codebasis won Wordpress ist relativ schmutzig. Gerade die Templates sind von php Code durchzogen, was Updates, Sicherheitsmanagement usw. unnötig verkompliziert.

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