Använda HHVM med WordPress

Under de senaste månaderna har HHVM tagit PHP-samhället med storm. Sedan WordPress 3.9 släpptes, är HHVM nu 100% kompatibel med WordPress.

Tyvärr är HHVM inte helt redo att användas i produktion i självhävd miljö. I min erfarenhet kraschar HHVM om en gång per dag, vilket gör det inte lönsamt för en webbplats där hög tillgänglighet är viktig. Nyligen har WP Engine släppt projektet Mercury som gör att HHVM smidigt kan misslyckas genom att falla tillbaka till PHP 5.5 när den misslyckas.

I den här artikeln kommer vi att installera HHVM på en Ubuntu-server som kör den senaste versionen av LTS, 14.04. Detta kan åstadkommas antingen genom att använda ett visualiseringsprogram som VirtualBox (gratis) med en nedladdad Ubuntu ISO-fil, eller genom att använda en cloud-värdtjänst. DigitalOcean erbjuder moln servrar för $ 5 per månad, vilket är vad jag ska använda i denna handledning.

Det första du bör göra är att uppdatera alla paket och beroenden:

$ sudo apt-get update && sudo apt-get uppgradering

Installera MySQL

Nu behöver du installera MySQL, databasen som driver WordPress.

$ sudo apt-get installera mysql-server

Du bör ange ett MySQL-lösenord för uppenbara säkerhetsskäl. Om du är extra säkerhetsmedveten bör du också springa $ mysql_secure_installation och följ de nödvändiga stegen för att låsa ner servern.

Installera Nginx

Nästa sak du behöver göra är att skapa en webbserver. Jag föredrar att använda Nginx eftersom den är lätt, mångsidig och lätt att konfigurera.

$ sudo apt-get install nginx

Installera HHVM

Installera nu HHVM. Det är inte så enkelt att installera andra paket eftersom det inte är tillgängligt i Ubuntu-förvaret. I stället måste vi ladda ner det från HHVM själv, tillsammans med några avhängigheter.

wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add-echo deb http://dl.hhvm.com/ubuntu trusty main | sudo tee /etc/apt/sources.list.d/hhvm.list sudo apt-uppdatera cd / tmp && wget http://security.ubuntu.com/ubuntu/pool/main/libm/libmemcached/libmemcached10_1.0.8- 1ubuntu2_amd64.de ... sudo dpkg -i libmemcached10_1.0.8-1ubuntu2_amd64.deb && rm libmemcached10_1.0.8-1ubuntu2_amd64.deb sudo apt-get install -y libgnutls26 wget http://mirrors.kernel.org/ubuntu/pool/main/r /rtmpdump/librtmp0_2.4+20121230.gitdf6c518-1_amd64.deb && sudo dpkg -i librtmp0_2.4 + 20121230.gitdf6c518-1_amd64.deb && rm librtmp0_2.4 + 20121230.gitdf6c518-1_amd64.deb sudo apt-get install hhvm

Nu när vi har installerat HHVM måste vi köra ett installationsskript som installerar HHVM-modulen för Nginx.

sudo /usr/share/hhvm/install_fastcgi.sh

Nu starta om HHVM och Nginx.

 sudo /etc/init.d/hhvm omstart

sudo /etc/init.d/nginx omstart

Konfigurera webbplatsen

Nästa sak vi behöver göra är att skapa en virtuell värd för vår hemsida. Vanligtvis skulle du skapa en ny virtuell värd för varje webbplats på en server, men eftersom vi testar (och för enkelhetens skull) kommer vi bara att skriva över innehållet i / Etc / nginx / sites-available / default med en enkel fil nedan:

Obs! Du behöver rootbehörigheter för att redigera den här filen.

server lyssna 80; server_name localhost; # eller ersätt localhost med domännamn inkluderar hhvm.conf; access_log /var/log/nginx/access.log; error_log /var/log/nginx/error.log; root / var / www; index index.php; plats / try_files $ uri $ uri / /index.php?$args;  

Nu kan vi skapa WordPress:

  1. Ladda om din uppdaterade nginx-konfiguration: $ sudo service nginx reload.
  2. Skapa nu en webbrots katalog: $ sudo mkdir / var / www.
  3. Hämta WordPress:  $ Sudo wget http://wordpress.org/latest.tar.gz / Var / www /.
  4. Extrahera WordPress: $ sudo tjär xvf /var/www/latest.tar.gz.
  5. Flytta WordPress-filer till webbrot: $ sudo mv / var / www / wordpress / * / var / www /.
  6. Städa: $ sudo rm -rf / var / www / wordpress /var/www/latest.tar.gz.
  7. Ange behörigheter: $ sudo chmod-R 775 / var / www.
  8. Ange grupper: $ sudo chown -R www-data.www-data / var / www.

Ställ in WordPress-databasen

Logga in på MySQL $ mysql -u rot-p. Kör nu följande kommandon:

Skapa DATABASE wordpress; SKAPA USER wordpress @ localhost; Ge ALLA PRIVILEGER PÅ wordpress. * Till användarnamn @ localhost IDENTIFIED BY 'lösenord'; FLUSH PRIVILEGES; sluta med 

Nu kan du gå till din servers IP-adress och följa den berömda fem minuters installationen. 

Slutsats

grattis! Du har nu din egen WordPress-webbplats som körs på avancerad teknik. Här är mina hastigheter som kör standard WordPress med HHVM, följ instruktionerna ovan:

Hur snabbt laddar din webbplats?