Debian: WordPress mehrfach nutzen

Wer sein WordPress über die Debian-Paketverwaltung bezieht, kann gleich mehrere Blogs auf einmal damit einrichten und bei Updates werden diese gleichzeitig aktualisiert.

Um in den Genuss der aktuellsten Version von WordPress zu kommen muss diese über die apt-pinning Funktion installiert werden. Aber auch die stable-Version wird einfach über apt-get install wordpress installiert.

Die Dateien liegen nun unter /usr/share/wordpress/, die Debian spezifische Dokumentation liegt unter /usr/share/doc/wordpress/ und dort finden sich auch einige Beispiele im exampes-Ordner.

1. Einrichtung des Webservers

In der Datei examples/apache.conf befinden sich drei Möglichkeiten beschrieben den Blog einzurichten. Diese haben jedoch alle gemeinsam, dass sie meinen Anforderungen nicht genügen. Um zu jedem Blog ein favicon.ico, eine robots.txt und natürlich einen von den anderen Blogs getrennten Upload-Ordner zu haben, ist die folgene Methode eine Möglichkeit die sie gut bewährt hat:

<VirtualHost *:80>
ServerName www.example.com
# /blog/ virtuell verlinken
Alias /blog /usr/share/wordpress
<Directory /usr/share/wordpress>
Options FollowSymLinks
AllowOverride Limit Options FileInfo
DirectoryIndex index.php
</Directory>
# htdocs Ordner einstellen und Mod-Rewrite aktivieren
DocumentRoot /var/www/example.com/www/htdocs/
<Directory /var/www/example.com/www/htdocs>
DirectoryIndex /blog/index.php
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
</Directory>
# Log-Dateien schreiben
ErrorLog /var/log/apache/www.example.com-error.log
CustomLog /var/log/apache/www.example.com-access.log combined
</VirtualHost>

Nach dem aktivieren des neuen vHosts, steht der neue Blog schon fast zur Verfügung:

#a2ensite www.example.com
#apache2ctl graceful

2. mySQL-Server

Die Datenbank wird mit examples/setup-mysql erstellt. Zum Ausführen müssen zuerst die entsprechenden Rechte gesetzt werden, wonach das Setup gestartet werden kann:

#chmod +x setup-mysql
#./setup-mysql
.
Options:
-n name for the mysql user and database
-h help
-d destroy and purge
-b backup
.
Example: You want your blog to be served from http://blog.example.com
for user ‘wordpress’.
.
Then run:
sudo bash setup-mysql -n wordpress blog.example.com

Das Setup erzeugt einen Benutzer mit Passwort welcher nur Zugriff auf die neue Datenbank hat.

3. Konfiguration

Die Konfiguration des Blogs findet – wie auch in der Standard WordPress-Version – über den Browser statt, indem die entsprechende Seite /blog/wp-admin/ aufgerufen wird.

4. Lokalisierung

Um den Adminbereich des Blogs in deutscher Sprache anzuzeigen, wird die deutsche de_DE.mo Datei für das Basissystem benötigt, welche unter /usr/share/wordpress/wp-content/languages abgelegt wird. Die automatisch erstellte Konfigurationsdatei unter /etc/wordpress/config-www.example.com.php wird erweitert:

define (‘WPLANG’, ‘de_DE’);

5. Upload-Verzeichniss
Das Upload-Verzeichnis für jeden einzelnen Blog, wird in der config-Datei und ggf. auch im Adminbereich (unter Einstellungen->Verschiedenes) fest eingestellt:

$upload_path = “/var/www/example.com/www/htdocs/wp-uploads/”;
$upload_url_path = “http://www.example.com/wp-uploads”;

Das Verzeichniss muss natürlich vorhanden sein und für den Webserver die benötigten Schreibrechte besitzen.

6. Themes und Plugins

gemeinsame Themes und Plugins werden unter /usr/share/wordpress/wp-content abgelegt und stehen allen Blogs zur Verfügung.

Offizielle WordPress Seite
Basis auf Deutsch Sie-Version oder Du-Version
Standard-Template auf deutsch

Author: admirableadmin

Hello World! Ich bin Andreas Peichert und entwickle und programmiere Software seit 2000. Zurzeit arbeite ich als Senior Solution Architect.

Leave a Reply

Your email address will not be published. Required fields are marked *