Ṣiṣeto Iṣẹ-giga HHVM ati Nginx/Apache pẹlu MariaDB lori Debian/Ubuntu


HHVM duro fun Ẹrọ Virtual HipHop, jẹ ẹrọ iṣiri orisun orisun ti a ṣẹda fun gige gige (o jẹ ede siseto fun HHVM) ati awọn ohun elo kikọ ti PHP. HHVM nlo ọna akopọ iṣẹju to kẹhin lati ṣe aṣeyọri iṣẹ iyalẹnu lakoko titọju irọrun ti awọn olutẹpa eto PHP ti jẹ mimu si. Titi di ọjọ, HHVM ti ṣaṣeyọri lori ilosoke 9x kan ninu igbasilẹ ibeere http ati diẹ sii ju 5x ge ni iṣamulo iranti (nigbati o ba n ṣiṣẹ lori iranti eto kekere) fun Facebook ni akawe pẹlu ẹrọ PHP + APC (Idakeji PHP Kaṣe).

HHVM tun le ṣee lo pẹlu olupin wẹẹbu-orisun FastCGI bi Nginx tabi Apache.

Ninu ẹkọ yii a yoo wo awọn igbesẹ fun siseto olupin ayelujara Nginx/Apache, olupin data MariaDB ati HHVM. Fun iṣeto yii, a yoo lo Ubuntu 15.04 (64-bit) bi HHVM ti n ṣiṣẹ lori eto 64-bit nikan, botilẹjẹpe awọn pinpin Debian ati Lainos Mint tun ṣe atilẹyin.

Igbesẹ 1: Fifi Nginx ati Server Server Apache sori ẹrọ

1. Ni akọkọ ṣe igbesoke eto kan lati ṣe imudojuiwọn atokọ ibi ipamọ pẹlu iranlọwọ ti awọn ofin atẹle.

# apt-get update && apt-get upgrade

2. Bi Mo ti sọ HHVM le ṣee lo pẹlu Nginx ati olupin ayelujara Apache mejeeji. Nitorinaa, o fẹ rẹ eyi ti olupin wẹẹbu ti iwọ yoo lo, ṣugbọn nibi a yoo fi han ọ fifi sori ẹrọ awọn olupin ayelujara mejeeji ati bii o ṣe le lo wọn pẹlu HHVM.

Ni igbesẹ yii, a yoo fi sori ẹrọ olupin ayelujara Nginx/Apache lati ibi ipamọ awọn idii nipa lilo pipaṣẹ atẹle.

# apt-get install nginx
# apt-get install apache2

Ni aaye yii, o yẹ ki o ni anfani lati lilö kiri si atẹle URL ati pe iwọ yoo ni anfani lati wo Nginx tabi oju-iwe aiyipada Apache.

http://localhost
OR
http://IP-Address

Igbese 2: Fi sori ẹrọ ati Tunto MariaDB

3. Ni igbesẹ yii, a yoo fi sori ẹrọ MariaDB, bi o ṣe n pese awọn iṣẹ ti o dara julọ bi a ṣe akawe si MySQL.

# apt-get install mariadb-client mariadb-server

4. Lẹhin fifi sori aṣeyọri MariaDB, o le bẹrẹ MariaDB ki o ṣeto ọrọ igbaniwọle root lati ni aabo ibi ipamọ data:

# systemctl start mysql
# mysql_secure_installation

Dahun awọn ibeere wọnyi nipa titẹ y tabi n ki o tẹ tẹ. Rii daju pe o ka awọn itọnisọna daradara ṣaaju didahun awọn ibeere naa.

Enter current password for root (enter for none) = press enter
Set root password? [Y/n] = y
Remove anonymous users[y/n] = y
Disallow root login remotely[y/n] = y
Remove test database and access to it [y/n] = y
Reload privileges tables now[y/n] = y 

5. Lẹhin ti o ṣeto ọrọ igbaniwọle root fun MariaDB, o le sopọ si tọ MariaDB pẹlu ọrọ igbaniwọle tuntun.

# mysql -u root -p

Igbesẹ 3: Fifi sori ẹrọ ti HHVM

6. Ni ipele yii a yoo fi sori ẹrọ ati tunto HHVM. O nilo lati ṣafikun ibi ipamọ HHVM si faili awọn orisun.list lẹhinna o ni lati ṣe imudojuiwọn akojọ ibi ipamọ rẹ nipa lilo awọn atẹle awọn ofin wọnyi.

# wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | apt-key add -
# echo deb http://dl.hhvm.com/ubuntu DISTRIBUTION_VERSION main | sudo tee /etc/apt/sources.list.d/hhvm.list
# apt-get update

Pataki: Maṣe gbagbe lati ropo DISTRIBUTION_VERSION pẹlu ẹya pinpin Ubuntu rẹ (ie lucid, konge, tabi igbẹkẹle.) Ati tun lori Debian ropo pẹlu jessie tabi wheezy. Lori awọn itọnisọna fifi sori ẹrọ Mint Linux jẹ kanna, ṣugbọn petra nikan ni pinpin atilẹyin lọwọlọwọ.

Lẹhin fifi ibi-ipamọ HHVM kun, o le ni rọọrun fi sii bi o ti han.

# apt-get install -y hhvm

Fifi HHVM sii yoo bẹrẹ ni bayi, ṣugbọn ko ṣe tunto lati bẹrẹ laifọwọyi ni ibẹrẹ eto atẹle. Lati ṣeto ibẹrẹ laifọwọyi ni bata atẹle lo aṣẹ atẹle.

# update-rc.d hhvm defaults

Igbese 4: Tito leto Nginx/Afun lati ba HHVM sọrọ

7. Bayi, nginx/apache ati HHVM ti fi sori ẹrọ ati ṣiṣe bi ominira, nitorinaa a nilo lati tunto awọn olupin ayelujara mejeeji lati ba ara wọn sọrọ. Apakan pataki ni pe a ni lati sọ fun nginx/afun lati dari gbogbo awọn faili PHP si HHVM lati ṣe.

Ti o ba nlo Nginx, tẹle awọn itọnisọna yii bi a ti ṣalaye ..

Nipa aiyipada, iṣeto nginx ngbe labẹ/ati be be/nginx/awọn aaye-wa/aiyipada ati atunto wọnyi n wo/usr/share/nginx/html fun awọn faili lati ṣe, ṣugbọn ko mọ kini lati ṣe pẹlu PHP.

Lati ṣe Nginx lati ba HHVM sọrọ, a nilo lati ṣiṣe atẹle naa pẹlu iwe afọwọkọ ti yoo tunto nginx ni pipe nipasẹ gbigbe hhvm.conf ni ibẹrẹ ti atunto nginx bi a ti sọ loke.

Iwe afọwọkọ yii jẹ ki nginx sọrọ si eyikeyi faili ti o pari pẹlu .hh tabi .php ki o firanṣẹ si HHVM nipasẹ fastcgi.

# /usr/share/hhvm/install_fastcgi.sh

Pataki: Ti o ba nlo Apache, ko si iṣeto eyikeyi ti o nilo ni bayi.

8. Nigbamii ti, o nilo lati lo/usr/bin/hhvm lati pese/usr/bin/php (php) nipa ṣiṣe pipaṣẹ yii ni isalẹ.

# /usr/bin/update-alternatives --install /usr/bin/php php /usr/bin/hhvm 60

Lẹhin ti gbogbo awọn igbesẹ ti o loke ti ṣe, o le bẹrẹ HHVM bayi ki o danwo rẹ.

# systemctl start hhvm

Igbesẹ 5: Idanwo HHVM pẹlu Nginx/Apache

9. Lati rii daju pe hhvm n ṣiṣẹ, o nilo lati ṣẹda faili hello.php kan labẹ itọsọna nginx/apache root directory.

# nano /usr/share/nginx/html/hello.php       [For Nginx]
OR
# nano /var/www/html/hello.php               [For Nginx and Apache]

Ṣafikun snippet atẹle si faili yii.

<?php
if (defined('HHVM_VERSION')) {
echo 'HHVM is working';
 phpinfo();
}
else {
echo 'HHVM is not working';
}
?>

ati lẹhinna lilö kiri si URL atẹle yii ki o ṣayẹwo lati rii “hello world“.

http://localhost/info.php
OR
http://IP-Address/info.php

Ti oju-iwe "HHVM" ba han, lẹhinna o tumọ si pe gbogbo rẹ ti ṣeto!

Ipari

Awọn igbesẹ wọnyi rọrun pupọ lati tẹle ati nireti pe iwọ yoo rii itọnisọna yii ti o wulo ati ti o ba ni aṣiṣe eyikeyi lakoko fifi sori ẹrọ ti eyikeyi awọn idii, firanṣẹ asọye ati pe awa yoo wa awọn solusan papọ. Ati pe awọn imọran afikun ni o gba.