WordPress

Installation allgemein

Download des Installationspaketes : http://bitnami.org/files/stacks/wordpress/3.4.2-0/bitnami-wordpress-3.4.2-0-linux-installer.run
starten des Installers als root und zu allem ja sagen.
der eigene SMTP-Server muss angegeben werden.

Installation auf DEBIAN

apt-get install wordpress

(das Standardverzeichnis lautet hier : /var/lib/wordpress und /usr/share/wordpress)

MYSQL

Datenbank mit mysql erstellen:

CREATE DATABASE  `wpdb` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
GRANT ALL ON wpdb.* TO 'meinWPDBusr'@'meinWPsrv' IDENTIFIED BY 'meinWPDBusrpass';


anschließend MySQL-Zugriff mit diesem Benutzer testen!
in der Datei /etc/wordpress/config-default.php müssen diese Einträge vorhanden sein:

...
define( 'DB_NAME', 'wpdb');
define( 'DB_HOST', 'meinWPsrv');
define( 'DB_USER', 'meinWPDBusr');
define( 'DB_PASSWORD', 'meinWPDBusrpass');
...


Konfiguration von automatischem Start von Wordpress bei Rechnerstart auf einem DEBIAN-server:

kopiere die Datei /opt/wordpress-3.4.2-0/ctlscript.sh nach /etc/init.d/wordpress
füge am Anfang der Datei die folgenden Zeilen ein:

#!/bin/sh

### BEGIN INIT INFO
# Provides:		wordpress
# Required-Start:	$remote_fs $syslog
# Required-Stop:	$remote_fs $syslog
# Default-Start:	2 3 4 5
# Default-Stop:		0 1 6
# Short-Description:	Wordpress-Startscript
# Description:		Dies Script sollte in /etc/init.d/ liegen.
#			auf dem Rechner sollte kein weiterer apache oder mysql gestartet sein.
### END INIT INFO
# Disabling SELinux if enabled
...

Konfiguriere wordpress jetzt für automatischen start:

update-rc.d wordpress defaults  

Starte jetzt wordpress neu

/etc/init.d/wordpress stop
/etc/init.d/wordpress start

Teste ob bei Rechnerneustart wordpress mit gestartet wird.

Authentifizierung gegen ein Active Directory

Download des Installationspaketes:

wget http://downloads.wordpress.org/plugin/active-directory-integration.1.1.3.zip''

Nachinstallation des ZIP-Paketes:

apt-get install unzip

Auspacken des Pluginverzeichnisses:

unzip active-directory-integration.1.1.3

Kopieren des Pluginverzeichnisses:

cp -avr active-directory-integration.1.1.3 /opt/wordpress-3.4.2-0/apps/wordpress/wp-content/plugins/

dann Neustart von wordpress:

/etc/init.d/wordpress restart

dann Anmelden an Wordpress-Webseite als Admin und unter Administration / Plugins „Active Directory Integration“ aktivieren.
dann das Plugin unter Einstellungen / Active Directory Integration durchkonfigurieren (übernehmen immer anklicken) und wordpress neustarten.

Server
Domaincontroller meinDC
PORT389
LDAP Network Timeout5
Base DNOU=user,DC=firma,DC=com
Benutzer
Account Suffix @firma.com
StandardEmail-Domänefirma.com
den Namen wie folgt darstellensamAccountName
zeige Benutzerstatusja
Berechtigung
Berechtigung durch Zugehörigkeitja
Gruppe(n):NTgrp1;NTgrp2
Rollen-Gruppen-ZuordnungDomänen-Admins=administrator;NTgrp1=author;NTgrp2=subscriber

SSL-Zugriff konfigurieren

Standardmäßig ist wordpress über http+https erreichbar.
um nur SSL zu verwenden muß die Datei:apps/wordpress/htdocs/wp-config.php editiert werden.
von http nach https

define("WP_SITEURL','https://' . $-SERVER['HTTP_HOST'] . '/wordpress');
define("WP_HOME','https://' . $-SERVER['HTTP_HOST'] . '/wordpress');

define('FORCE_SSL_LOGIN',true);
define('FORCE_SSL_ADMIN',true);

Debuging einschalten

Eintrag in Datei /usr/share/wordpress/wp-content/plugins/active-directory-integration/ad-integration.php ändern:

# von
protected $_loglevel = ADI_LOG_NONE;
# nach
protected $_loglevel = ADI_LOG_DEBUG;

und in Datei /etc/wordpress/config-default.php

define( 'WP_DEBUG', true);

einfügen.

Fehler

Plugins und Themes lassen sich in debian nicht über die Weboberfläche aktualisieren:
auf dem Server muss ein FTP-Dienst laufen der auf das Verzeichnis /usr/share/wordpress/wp-content/plugins zeigt.
siehe dazu auch: VSFTPD
in der Datei /etc/wordpress/config-default.php müssen diese Einträge vorhanden sein:

...
define( 'FTP_HOST', 'meinWPsrv');
define( 'FTP_USER', 'meinWPusr');
define( 'FTP_PASS', 'meinWPusrpass');
...

(kann auch ein per winbind benutzter Name sein)
Dieser Benutzer muss ein Home-Verzeichnis auf dem Server und Schreibrechte in diese Verzeichnisse haben:

chown -R meinWPusr:users /usr/share/wordpress/wp-content
chown -R meinWPusr:users /var/lib/wordpress/wp-content

fertig.
update: folgende Zeile soll das selbe bewirken: define(‘FS_METHOD’, ‘direct’);

Fehler:
upload von Dateien schlägt wegen uploadlimit fehl: „Maximum upload file size: 2 MB.“
Lösung:
Datei /etc/php5/apache2/php.ini editieren:

upload_max = 2000M
post_max_size = 2000M
memory_limit = 2000M

danach apache neu starten:

/etc/init.d/apache2 restart