HHVM (Hip Hop Virtual Machine) ist ein Just-in-Time-Compiler, der von Facebook entwickelt wurde, um Anwendungen auszuführen, die in PHP und Hack-Sprache geschrieben sind. HHVM ist schneller als die herkömmliche PHP-Engine von ZEND und wird von Facebook verwendet, um Milliarden von Webanfragen pro Tag zu bedienen. HHVM hat einen 9-mal höheren Durchsatz an Webanfragen und eine über 5-fache Reduzierung des Speicherverbrauchs im Vergleich zur Zend PHP 5.2-Engine + APC. Weitere Informationen finden Sie hier.
Dieses Tutorial beschreibt die Installation von Nginx, MariaDB, HHVM und Wordpress auf Debian 8 (Jessie).
1 Voraussetzungen
Auf dem Server sollte eine minimale Serverinstallation von Debian 8 (64Bit) ausgeführt werden. Wenn Sie den Server von Grund auf neu installieren, sehen Sie sich diese Anleitung an, um eine saubere Minimalinstallation zu erhalten. Ich werde die IP 192.168.1.100 als meine Server-IP verwenden. Bitte ersetzen Sie diese IP durch Ihre Server-IP in allen Befehlen, wo sie erscheint.
2 Installieren Sie Nginx
Das Nginx-Paket ist im Debian apt-Repository verfügbar. Nginx kann mit dem folgenden Befehl installiert werden:
apt-get update
apt-get install nginx unzip
Starten Sie Nginx neu, wenn die Installation abgeschlossen ist.
systemctl start nginx
Jetzt können Sie Nginx in Ihrem Browser testen, um zu sehen, ob es richtig installiert ist. Öffnen Sie die Server-IP:http://192.168.1.100/. Sie sollten eine Seite sehen, die der folgenden ähnelt.
3 Installieren und konfigurieren Sie MariaDB
Ich werde MariaDB anstelle von MySQL installieren, um die bessere Leistung und die zusätzlichen Funktionen zu nutzen. MariaDB ist ein Fork des MySQL-Datenbankservers, der von den ursprünglichen MySQL-Entwicklern gepflegt wird.
Führen Sie zum Installieren von MariaDB den folgenden apt-get-Befehl aus:
apt-get install mariadb-client mariadb-server
Und starten Sie MariaDB mit systemctl:
systemctl start mysql
Melden Sie sich jetzt mit dem Befehl "mysql" bei MariaDB an. Der Befehl fordert das Passwort an, das Sie während der MariaDB-Installation oben festgelegt haben.
mysql -u root -p
TYPE YOUR PASSWORD
Der nächste Schritt besteht darin, eine neue Datenbank mit dem Namen wordpressdb und einen neuen Datenbankbenutzer mit dem Namen wpuser für die WordPress-Installation zu erstellen. Führen Sie die folgenden Befehle in der MySQL-Eingabeaufforderung aus, um dies zu erreichen. Ersetzen Sie das Passwort „[email protected]“ durch ein sicheres Passwort, das als Passwort für die neue WordPress-Datenbank verwendet wird.
create database wordpressdb;
create user [email protected] identified by '[email protected]';
grant all privileges on wordpressdb.* to [email protected] identified by '[email protected]';
flush privileges;
\q
4 HHVM installieren und konfigurieren
Fügen Sie das Repository von hhvm.com zur Ubuntu-Repository-Datei /etc/apt/sources.list hinzu und aktualisieren Sie das Repository:
wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | apt-key add -
echo deb http://dl.hhvm.com/debian jessie main | tee /etc/apt/sources.list.d/hhvm.list
apt-get update
Installieren Sie dann das HHVM-Paket:
apt-get install hhvm
HHVM wird mit einem Skript install_fastcgi.sh geliefert um Nginx mit HHVM zu verbinden. Führen Sie den folgenden Befehl aus:
/usr/share/hhvm/install_fastcgi.sh
Konfigurieren Sie HHVM so, dass es automatisch startet, wenn der Server hochfährt:
update-rc.d hhvm defaults
HHVM soll für /usr/bin/php verwendet werden, selbst wenn Sie php-cli installiert haben, also führen wir das Debian-Skript update-alternatives aus, um das Standard-PHP neu zu konfigurieren:
/usr/bin/update-alternatives --install /usr/bin/php php /usr/bin/hhvm 60
Starten Sie dann HHVM mit systemctl:
systemctl start hhvm
Im nächsten Schritt werde ich testen, ob HHVM zum Parsen von PHP-Seiten in Nginx und auf der Shell verwendet wird.
Erstellen Sie eine neue Datei mit dem Namen info.php im Verzeichnis /var/www/html/:
cd /var/www/html/
nano info.php
Und fügen Sie diesen PHP-Code in die Datei ein:
<?php echo 'HipHop'; ?>
Greifen Sie nun in Ihrem Browser auf die Datei zu:http://192.168.1.100/info.php. Wenn Sie das Wort HipHop auf Ihrer Webseite sehen, funktioniert HHVM ordnungsgemäß.
Testen Sie schließlich HHVM in Ihrer Serverkonsole/Ihrem Terminal, geben Sie diesen Befehl ein:
php info.php
php -v
Der erste Befehl soll das Wort "HipHop" anzeigen, der zweite Befehl die HHVM-Version.
rm /var/www/html/info.php
5 Wordpress installieren
Geben Sie /var/www/html/ ein Ordner, laden Sie WordPress herunter und extrahieren Sie das Archiv:
cd /var/www/html/
wget wordpress.org/latest.zip
unzip latest.zip
Der Unzip-Befehl extrahiert Wordpress in das Unterverzeichnis „wordpress“, ich werde alle WordPress-Dateien und -Verzeichnisse nach /var/www/html/ verschieben, da ich gerne auf WordPress auf / auf dem Server und nicht auf /wordpress/ zugreife:
cd /var/www/html/
mv wordpress/* .
rm -rf wordpress/
Ändern Sie dann den Eigentümer der WordPress-Dateien in den Benutzer und die Gruppe www-data. Normalerweise gehören alle Dateien im Verzeichnis /var/www/html/ dem Nutzer und der Gruppe www-data.
find . -type d -exec chown www-data:www-data {} \;
find . -type f -exec chown www-data:www-data {} \;
Benennen Sie die Datei wp-config-sample.php in wp-config.php um. Öffnen Sie dann die Datei mit dem Nano-Editor und stellen Sie den Datenbanknamen, den Benutzer und das Passwort ein, die während der Datenbankeinrichtung erstellt wurden.
mv wp-config-sample.php wp-config.php
nano wp-config.php
DB_NAME = wordpressdb DB_USER = wpuser DB_PASSWORD = [email protected]
Bearbeiten Sie nun die nginx virtualhost-Datei /etc/nginx/sites-available/default und fügen Sie index.php als erstes Element der Indexkonfigurationseinstellung hinzu. Diese Einstellung weist Nginx an, die Datei index.php als Standard-Indexdatei zu verwenden, wenn auf die Website mit / (ohne Dateiname) zugegriffen wird.
rm -f index.nginx.html
nano /etc/nginx/sites-available/default
Starten Sie dann Nginx neu:
systemctl restart nginx
Versuchen Sie erneut, auf die Server-IP zuzugreifen:http://192.168.1.100/, Sie werden zum WordPress-Installationsprogramm weitergeleitet. Befolgen Sie die Anweisungen des Installationsprogramms, um die Installation abzuschließen.
1) Bitte wählen Sie Ihre Sprache aus, Beispiel:Englisch (USA) und drücken Sie die Schaltfläche Weiter.
2) Geben Sie den Benutzernamen und das Passwort ein, die verwendet werden sollen, um den WordPress-Administrator und Ihre E-Mail-Adresse zu authentifizieren, und klicken Sie dann auf die Schaltfläche „Wordpress installieren“.
Warten Sie, bis die Installation abgeschlossen ist, und gehen Sie dann zum WordPress-Administrator-Login:http://192.168.1.100/wp-login.php, oder besuchen Sie die WordPress-Startseite http://192.168.1.100/.
Wordpress ist jetzt mit HHVM und Nginx auf Ihrem Debian 8-Server installiert.
6 Fazit
Das in diesem Tutorial beschriebene Setup kombiniert einige der schnellsten Softwareoptionen zum Ausführen einer WordPress-Site. Nginx ist ein weit verbreiteter Hochleistungs-Webserver, der Seiten schneller bereitstellen kann als der herkömmliche Apache-Webserver, HHVM ist ein Hochgeschwindigkeitsersatz für die PHP-Zend-Engine zum Ausführen von PHP-Skripten und MariaDB ist ein sehr schneller MySQL-Ersatz /P>
Dieses Tutorial basiert auf dem Howtoforge-Tutorial von Muhammed Arul für Ubuntu 15.04.