Dieses Dokument beschreibt, wie Sie mehrere WordPress-Sites mit der neuesten WordPress-Version auf CentOS 7 in einer einzigen WordPress-Instanz installieren und konfigurieren. WordPress startete 2003 mit einem einzigen Code-Bit, um die Typografie des täglichen Schreibens zu verbessern, und mit weniger Benutzern, als Sie an Ihren Fingern und Zehen zählen können. Seitdem hat es sich zum größten selbst gehosteten Blogging-Tool der Welt entwickelt, das auf Millionen von Websites verwendet und täglich von zig Millionen Menschen gesehen wird. Dieses Tutorial erklärt den Prozess der Installation von WordPress 4.0 auf CentOS 7.0 in Form einer einfach zu befolgenden Anleitung.
1 Vorbemerkung
Dieses Tutorial basiert auf dem CentOS 7.0-Server, daher sollten Sie eine grundlegende CentOS 7.0-Serverinstallation einrichten, bevor Sie mit diesem Tutorial fortfahren. Das System sollte eine statische IP-Adresse haben. Ich verwende in diesem Tutorial 192.168.0.100 als IP-Adresse und server1.example.com als Hostnamen. Sie müssen einen LAMP-Server in CentOS 7.0 installiert haben, wie im Tutorial erwähnt, um fortzufahren.
2 Datenbankinitialisierung
Ich werde die Datenbank für WordPress 4.0 wie folgt erstellen:
mysql -u root -p
Hier fügen wir database=wordpressdb user=wordpressuser und password=wordpresspassword:
hinzuCREATE DATABASE wordpressdb;
CREATE USER [email protected] IDENTIFIED BY 'wordpresspassword';
GRANT ALL PRIVILEGES ON wordpressdb.* TO [email protected];
Weiter voran:
FLUSH PRIVILEGES;
exit
Dienste neu starten
service httpd restart
service mariadb restart
Weiterhin müssen Sie dem Firewall-cmd http und https wie folgt erlauben:
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
3 Installation von WordPress 4.0
Wir werden zuerst ein temporäres Verzeichnis erstellen, in dem ich die neueste Version von WordPress wie folgt herunterladen werde:
mkdir temp
cd temp
yum install wget unzip net-tools
wget http://wordpress.org/latest.zip
Wenn Sie mit Bildern arbeiten, Plug-ins installieren und die Website mit SSH-Anmeldeinformationen aktualisieren möchten, installieren wir Folgendes:
yum install php-gd
service httpd restart
Entpacken Sie die Wordpress 4.0 Zip-Datei in den Ordner:
unzip -q latest.zip -d /var/www/html/
Vergeben Sie nun entsprechende Berechtigungen im Verzeichnis
chown -R apache:apache /var/www/html/wordpress
chmod -R 755 /var/www/html/wordpress
Außerdem müssen wir das Uploads-Verzeichnis unterhalb des wp-content-Verzeichnisses in unserem Dokumentenstammverzeichnis manuell erstellen. Dies ist das übergeordnete Verzeichnis unserer Inhalte:
mkdir -p /var/www/html/wordpress/wp-content/uploads
Wir müssen dem Webserver selbst erlauben, in dieses Verzeichnis zu schreiben. Wir können dies tun, indem wir unserem Webserver den Gruppenbesitz dieses Verzeichnisses zuweisen. Dadurch kann der Webserver Dateien und Verzeichnisse unter diesem Verzeichnis erstellen, die es uns ermöglichen, Inhalte auf den Server hochzuladen. Gehen Sie wie folgt vor:
chown -R :apache /var/www/html/wordpress/wp-content/uploads
Jetzt brauchen wir die Beispielkonfigurationsdatei, um sie in die Standardkonfigurationsdatei zu kopieren, damit WordPress die Datei erkennt. Die Beispielkonfigurationsdatei ist unter /var/www/html/wordpress:
cd /var/www/html/wordpress/
cp wp-config-sample.php wp-config.php
nano wp-config.php
[...]
// ** MySQL settings - You can get this info from your web host ** // /** The name of the database for WordPress */ define('DB_NAME', 'wordpressdb'); /** MySQL database username */ define('DB_USER', 'wordpressuser'); /** MySQL database password */ define('DB_PASSWORD', 'wordpresspassword');
[...]
Ändern Sie die Werte so, wie Sie sie zum Zeitpunkt der Datenbankinitialisierung angegeben haben.
3.1 Konfiguration mehrerer Sites
Jetzt werden wir mit der Konfiguration mehrerer Sites fortfahren, dafür müssen wir diese Zeilen zu unserer wp-config.php-Datei direkt über dem /* hinzufügen. Das ist alles, hör auf zu bearbeiten! Viel Spaß beim Bloggen. */ Zeile.
nano /var/www/html/wordpress/wp-config.php
[...] /* Multisite */ define('WP_ALLOW_MULTISITE', true); /* That's all, stop editing! Happy blogging. */
[...]
3.2 Apache Rewrite
Wir werden die virtuelle Apache-Hostdatei für WordPress ändern, damit sie für .htaccess-Überschreibungen zugelassen wird. Dazu bearbeiten wir die virtuelle Hostdatei und fügen die Einträge hinzu als:
nano /etc/httpd/conf/httpd.conf
[...]
# Further relax access to the default document root: <Directory "/var/www/html"> # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.4/mod/core.html#options # for more information. # Options Indexes FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride All
[...]
Ändern Sie den Wert von AllowOverride None in AllowOverride All, und starten Sie als Nächstes den Dienst neu:
service httpd restart
3.3 Erstellen Sie eine .htaccess-Datei
Jetzt erstellen wir eine .htaccess-Datei im Dokumentenstammverzeichnis, damit Apache Folgendes umschreiben kann:
touch /var/www/html/wordpress/.htaccess
Der Webserver muss jedoch der Gruppeneigentümer sein, also sollten wir den Besitz wie folgt anpassen:
chown apache /var/www/html/wordpress/.htaccess
Wenn Sie möchten, dass WordPress diese Datei automatisch mit Rewrite-Regeln aktualisiert, können Sie sicherstellen, dass es die richtigen Berechtigungen dafür hat, indem Sie Folgendes verwenden:
chmod 664 /var/www/html/wordpress/.htaccess
Wenn Sie diese Datei aus Sicherheitsgründen manuell aktualisieren möchten, können Sie dem Webserver nur Leserechte gewähren, indem Sie Folgendes eingeben:
chmod 644 /var/www/html/wordpress/.htaccess
In meinem Fall verwende ich die Berechtigungen 644.
3.4 Webinstallation
Fahren Sie nun mit der Webinstallation von WordPress 4.0 fort. Gehen Sie zur URL http://192.168.0.100/wordpress/wp-admin/install.php:
Sprache auswählen und Weiter drücken:
Weiter
Geben Sie nun die Werte so ein, wie ich sie in meinem Fall angegeben habe
Site Title = Wordpress-testsite Admin Email = [email protected] Username = admin Admin password = howtoforge Confirm Admin Password = howtoforge
Die obigen Werte werden in Ihrem Fall abweichen, Sie können beliebige Werte Ihrer Wahl eingeben. Nachdem Sie die Werte eingegeben haben, drücken Sie InstallWordpress:
Jetzt gehen wir zur Anmeldeseite, indem wir auf LogIn:
drücken
Geben Sie die Anmeldeinformationen ein, die Sie zum Zeitpunkt der Web-WordPress-Installation ausgewählt haben:
Dies wird Ihr Standard-Willkommensfenster von WordPress sein. Wir können die WordPress-Version im Browser wie folgt überprüfen:
3.5 Konfiguration mehrerer Websites
Gehen Sie nun zu Tools-->Network setup
Geben Sie die Einträge wie folgt ein
Netzwerktitel =Wordpress-Testsite Multisite
Netzwerkadministrator-E-Mail =[email protected]
und drücken Sie Installieren
Es ergibt das folgende Fenster:
Füge Folgendes zu deiner wp-config.php-Datei in /var/www/html/wordpress/ über der Zeile mit der Aufschrift /* hinzu. Das ist alles, hör auf zu bearbeiten! Viel Spaß beim Bloggen. */:
nano /var/www/html/wordpress/wp-config.php
Geben Sie die Einträge gemäß Ihrer Ausgabe nach der Multisite-Installation ein. In meinem Fall war es:
[...]
/* Multisite */ define('WP_ALLOW_MULTISITE', true); define('MULTISITE', true); define('SUBDOMAIN_INSTALL', false); define('DOMAIN_CURRENT_SITE', '192.168.0.100'); define('PATH_CURRENT_SITE', '/wordpress/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1);
/* That's all, stop editing! Happy blogging. */
[...]
Hinweis:In meinem Fall verwende ich 192.168.0.100, was in Ihrem Fall anders sein wird
Fügen Sie die folgenden Einträge zu Ihrer .htaccess-Datei in /var/www/html/wordpress/ hinzu und ersetzen Sie andere WordPress-Regeln:
nano /var/www/html/wordpress/.htaccess
RewriteEngine On RewriteBase /wordpress/ RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L] RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L] RewriteRule . index.php [L]
Nach dem Neustart von Apache
systemctl restart httpd.service
Melden Sie sich jetzt erneut bei WordPress an. Nachdem Sie das Multisite-Netzwerk erfolgreich eingerichtet haben, müssen Sie zum Netzwerk-Dashboard wechseln, um Netzwerkeinstellungen zu konfigurieren, neue Sites hinzuzufügen und viele andere Dinge zu tun. Bewegen Sie Ihre Maus über das Menü Meine Websites in der Admin-Symbolleiste, ein Flydown-Popup wird angezeigt. Klicken Sie auf Netzwerkverwaltung -->Dashboard.
Sie werden zum Dashboard der WordPress-Multisite weitergeleitet.
Jetzt können Sie eine neue Site erstellen, indem Sie auf Sites klicken.>Neu hinzufügen
Fügen Sie einfach die Werte gemäß Ihren Anforderungen hinzu.
Herzlichen Glückwunsch! Sie haben jetzt eine voll funktionsfähige WordPress 4.0-Instanz mit Netzwerk mit mehreren Standorten auf Ihrem CentOS 7.0 :)
5 Links
- WordPress:http://wordpress.org/
- CentOS:http://www.centos.org/