Mysql
 sql >> Database >  >> RDS >> Mysql

Utilizzo di HHVM con WordPress

Negli ultimi mesi HHVM ha preso d'assalto la comunità PHP. Da quando è stato rilasciato WordPress 3.9, HHVM è ora compatibile al 100% con WordPress.

Sfortunatamente, HHVM non è ancora pronto per l'uso in produzione in ambienti self-hosted. In base alla mia esperienza, HHVM si arresta in modo anomalo circa una volta al giorno, il che lo rende non praticabile per un sito in cui l'elevata disponibilità è importante. Di recente, WP Engine ha rilasciato il progetto Mercury che consente a HHVM di fallire senza problemi ricorrendo a PHP 5.5 quando fallisce.

In questo articolo, installeremo HHVM su un server Ubuntu che esegue l'ultima versione LTS, 14.04. Ciò può essere ottenuto utilizzando un programma di visualizzazione come VirtualBox (gratuito) con un file ISO Ubuntu scaricato o utilizzando un servizio di cloud hosting. DigitalOcean offre server cloud per $ 5 al mese, che è quello che userò in questo tutorial.

La prima cosa che dovresti fare è aggiornare tutti i pacchetti e le dipendenze:

$ sudo apt-get update && sudo apt-get upgrade

Installa MySQL

Ora devi installare MySQL, il database che alimenta WordPress.

$ sudo apt-get install mysql-server

Dovresti impostare una password MySQL di root per ovvi motivi di sicurezza. Se sei particolarmente attento alla sicurezza dovresti anche eseguire $ mysql_secure_installation e segui i passaggi necessari per bloccare il tuo server.

Installa Nginx

La prossima cosa che devi fare è configurare un server web. Preferisco usare Nginx perché è leggero, versatile e facile da configurare.

$ sudo apt-get install nginx

Installa HHVM

Ora installa HHVM. Non è così semplice come installare altri pacchetti perché non è disponibile nel repository di Ubuntu. Invece, dobbiamo scaricarlo dallo stesso HHVM, insieme ad alcune dipendenze.

wget -O - https://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-get update
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

Ora che abbiamo installato HHVM, dobbiamo eseguire uno script di installazione che installerà il modulo HHVM per Nginx.

sudo /usr/share/hhvm/install_fastcgi.sh

Ora riavvia HHVM e Nginx.

 sudo /etc/init.d/hhvm restart

sudo /etc/init.d/nginx restart

Configura il sito web

La prossima cosa che dobbiamo fare è configurare un host virtuale per il nostro sito web. In genere creeresti un nuovo host virtuale per ogni sito Web su un server, ma poiché stiamo testando (e per semplicità) sovrascriveremo semplicemente il contenuto di /etc/nginx/sites-available/default con un semplice file qui sotto:

Nota:per modificare questo file sono necessari i permessi di root.

server {
  listen 80;
      server_name localhost; # or replace localhost with domain name
  	include hhvm.conf;
  
  	access_log   /var/log/nginx/access.log;
	error_log    /var/log/nginx/error.log;
	
	root /var/www;
	index index.php;
	
	location / {
		try_files $uri $uri/ /index.php?$args; 
  	}
}

Ora possiamo configurare WordPress:

  1. Ricarica la configurazione nginx aggiornata: $ sudo service nginx reload .
  2. Ora crea una directory radice web:$ sudo mkdir /var/www .
  3. Scarica WordPress:  $ sudo wget http://wordpress.org/latest.tar.gz  /var/www/ .
  4. Estrai WordPress: $ sudo tar xvf /var/www/latest.tar.gz .
  5. Sposta i file di WordPress nella radice web:$ sudo mv /var/www/wordpress/* /var/www/ .
  6. Pulisci:$ sudo rm -rf /var/www/wordpress /var/www/latest.tar.gz .
  7. Imposta i permessi:$ sudo chmod -R 775 /var/www .
  8. Imposta gruppi:$ sudo chown -R www-data.www-data /var/www .

Configura il database di WordPress

Accedi a MySQL $ mysql -u root -p . Ora esegui i seguenti comandi:

CREATE DATABASE wordpress;
CREATE USER wordpress@localhost;
GRANT ALL PRIVILEGES ON wordpress.* to username@localhost IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
quit

Ora puoi andare all'indirizzo IP del tuo server e seguire la famosa installazione di cinque minuti.