GNU/Linux >> Znalost Linux >  >> OpenSuse

Jak nainstalovat WordPress s HHVM a Nginx na OpenSUSE Leap 42.1

HHVM (HipHop Virtual Machine) je open source virtuální stroj vyvinutý společností Facebook, je to JIT (just-in-time) kompilátor pro spouštění programů napsaných v PHP 5 (a některých funkcích PHP 7) a jazyce Hack. Pokud chcete na svém serveru spustit HHVM, můžete použít webový server založený na FastCGI nad webovým serverem Nginx nebo Apache, nebo můžete použít vestavěný webový server s názvem „Proxygen“.

V tomto tutoriálu vám ukážu, jak nainstalovat WordPress (dobře známý CMS založený na PHP) s HHVM a Nginx jako naším webovým serverem. Jako operační systém budu používat OpenSUSE Leap 42.1, takže jsou vyžadovány základní znalosti OpenSUSE.

Předpoklad

  • OpenSUSE Leap 42.1 – 64bit.
  • Oprávnění uživatele root.
  • Základní znalosti OpenSUSE jako Zypper, SuSE-firewall.

Krok 1 – Instalace Nginx

Nginx nebo engine-x je lehký webový server s vysokým výkonem a nízkou spotřebou paměti. Na našem serveru OpenSUSE můžeme k instalaci balíčku použít příkaz zypper.

Pomocí "sudo su" se staňte uživatelem root a nainstalujte Nginx pomocí příkazu zypper na openSUSE Leap 42.1:

sudo su
zypper in nginx

Poté přejděte do webového adresáře „/srv/www/htdocs“ a vytvořte nový soubor index.html.

cd /srv/www/htdocs/
echo "<h1>Nginx OpenSUSE Leap 42.1</h1>" > index.html

Přidejte Nginx ke spuštění při spouštění a spusťte Nginx příkazem systemctl:

systemctl enable nginx
systemctl start nginx

Abychom zajistili, že Nginx běží na našem serveru, můžeme navštívit IP adresu serveru pomocí prohlížeče nebo použít příkaz curl níže a zobrazit výsledky:

curl 192.168.43.29

Krok 2 – Instalace a konfigurace MariaDB

MariaDB je open source databáze vyvinutá původním vývojářem MySQL Monty Widenius, MariaDB je kompatibilní s MySQL. V tomto kroku nainstalujeme MariaDB a nakonfigurujeme heslo root pro databázi MariaDB. Poté vytvoříme novou databázi a uživatele, které potřebujeme pro naši instalaci WordPressu.

Nainstalujte MariaDB pomocí Zypper:

zypper in mariadb mariadb-client

Přidejte MariaDB do spouštěcí sekvence a poté ji spusťte:

systemctl enable mysql
systemctl start mysql

MariaDB byla spuštěna, nyní musíme nakonfigurovat heslo root pro databázi MariaDB/mysql. Spusťte níže uvedený příkaz a nastavte heslo root MariaDB.

/usr/bin/mysqladmin -u root password 'toor123'

Poznámka:

Heslo MariaDB je "toor123" , použijte na svém serveru jiné a bezpečnější heslo.

Kořenové heslo MariaDB bylo nakonfigurováno. Nyní se přihlaste do prostředí MariaDB/MySQL a vytvořte novou databázi "wpdb" a nový uživatel "wpuser" s heslem "[e-mail chráněn]" pro naši instalaci WordPressu. Zde si také ve svém systému vyberte bezpečné heslo.

Přihlaste se do prostředí MariaDB/MySQL:

mysql -u root -p
TYPE PASSWORD toor123

Vytvořte novou databázi a nového uživatele:

create database wpdb;
create user [email protected] identified by '[email protected]';
grant all privileges on wpdb.* to [email protected] identified by '[email protected]';
flush privileges;

MariaDB je nainstalována a byla vytvořena nová databáze pro naši instalaci WordPress.

Krok 3 – Instalace HHVM

Pro instalaci HHVM musíme přidat nové úložiště hhvm. K přidání nového úložiště hhvm na server můžeme použít příkaz zypper. Poté musíme obnovit repozitáře openSUSE:

zypper addrepo http://download.opensuse.org/repositories/home:munix9/openSUSE_Leap_42.1/home:munix9.repo
zypper refresh

Chcete-li klíči vždy důvěřovat, zadejte „a“.

Nyní nainstalujte balíčky hhvm:

zypper in hhvm hhvm-nginx hhvm-fastcgi

hhvm-nginx poskytuje ukázku konfigurace Nginx.

hhvm-fastcgi poskytuje meta soubory FastCGI.

Krok 4 – Konfigurace HHVM a Nginx

V tomto kroku nakonfigurujeme HHVM tak, aby běžel s webovým serverem Nginx. Nakonfigurujeme HHVM tak, aby používal Unix-socket a spouštěl HHVM jako uživatel Nginx. Přejděte do konfiguračního adresáře HHVM a upravte konfigurační soubor 'server.ini' pomocí editoru vim:

cd /etc/hhvm/
vim server.ini

Odkomentujte řádek 3, abyste povolili Unix-Sockets pro HHVM.

hhvm.server.file_socket = /var/run/hhvm/server.sock

Uložte a ukončete.

Dále musíme upravit skript služby HHVM tak, aby HHVM mohl spouštět uživatele Nginxginx. Je důležité nakonfigurovat HHVM tak, aby běžel jako stejný uživatel než webový server. Přejděte do adresáře systemd a upravte soubor 'hhvm.service' pomocí vim:

cd /usr/lib/systemd/system
vim hhvm.service

Změňte volbu --user hhvm na řádku 11 na uživatele nginx.

ExecStart=/usr/bin/hhvm --config /etc/hhvm/php.ini --config /etc/hhvm/server.ini --user nginx --mode daemon -vServer.Type=fastcgi -vServer.FileSocket=/var/run/hhvm/server.sock -    vPidFile=/var/run/hhvm/server.pid

Uložte a ukončete.

Nyní změňte vlastníka adresáře "/var/run/hhvm" na uživatele nginx.

chown -R nginx:nginx /var/run/hhvm/

Poznámka:

Po restartování serveru se někdy výchozí vlastník adresáře vrátí k výchozímu uživateli. Abychom tento problém vyřešili, můžeme definovat linuxový příkaz, který se má provést po provedení všech skriptů aktuální úrovně běhu.

Upravte soubor after.local v adresáři „/etc/rc.d/“ a na konec souboru přidejte nový příkaz linux:

vim /etc/rc.d/after.local

Vložte příkaz níže:

chown -R nginx:nginx /var/run/hhvm/

Uložte a ukončete.

Dále musíme nakonfigurovat HHVM pro práci s Nginx. Nainstalovali jsme nový balíček "hhvm-nginx", který obsahuje příklad konfigurace HHVM pro webový server Nginx.

Přejděte do konfiguračního adresáře Nginx a zkopírujte konfiguraci HHVM:

cd /etc/nginx/
cp hhvm.conf.example hhvm.conf

Upravte hhvm.conf pomocí vim:

vim hhvm.conf

Na druhém řádku přidejte novou konfiguraci pro definování webového kořenového adresáře:

root   /srv/www/htdocs;

Uložte a ukončete.

Poté musíme upravit konfiguraci Nginx tak, aby zahrnovala konfiguraci HHVM.

vim nginx.conf

Na řádku 59 – přidejte nový řádek konfigurace níže:

include /etc/nginx/hhvm.conf;

Uložte a ukončete.

Povolte a spusťte HHVM pomocí příkazu systemctl níže:

systemctl enable hhvm
systemctl start hhvm

Poté restartujte Nginx:

systemctl restart nginx

Nginx a HHVM byly nainstalovány a nakonfigurovány. Abychom otestovali, zda konfigurace funguje, vytvoříme nový php soubor, který obsahuje phpinfo kód a uložíme jej do kořenového adresáře webu "/srv/www/htdocs", poté k němu přistoupíme přes webový prohlížeč.

cd /srv/www/htdocs/
echo "<?php phpinfo(); ?>" > info.php

Otevřete prohlížeč a zadejte IP adresu serveru:

192.168.43.29/info.php

Nginx a HHVM fungují bez chyb.

Krok 5 – Vytvoření virtuálního hostitele pomocí HHVM a Nginx

V tomto kroku vytvoříme novou konfiguraci virtuálního hostitele s Nginx a HHVM. Budu používat název domény "hakasenano.co" pro tento příklad a použijte jej také jako doménu pro naši instalaci WordPressu. Nahraďte prosím název domény svým vlastním názvem domény ve všech konfiguračních souborech a příkazech.

Přejděte do adresáře Nginx a vytvořte nový adresář pro uložení souboru virtuálního hostitele:

cd /etc/nginx/
mkdir vhosts.d/
cd vhosts.d/

Vytvořte nový konfigurační soubor „nano.conf“ pomocí vim:

vim nano.conf

A vložte novou konfiguraci virtuálního hostitele níže:

server {
# This line for redirect non-www to www
server_name hakasenano.co; rewrite ^(.*) http://www.hakasenano.co$1 permanent; } server { listen 80; server_name www.hakasenano.co; root /srv/www/nano; index index.php index.html index.htm; location / { try_files $uri $uri/ =404; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /srv/www/htdocs; } # HHVM running throught Unix-Socket location ~ \.(hh|php)$ { root /srv/www/nano; fastcgi_keep_conn on; #fastcgi_pass 127.0.0.1:9000; fastcgi_pass unix:/var/run/hhvm/server.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }

Uložte a ukončete.

V naší konfiguraci virtuálního hostitele jsme definovali webový kořenový adresář pro název domény jako adresář „/srv/www/nano“. Tento adresář prozatím neexistuje, takže musíme tento adresář nyní vytvořit.

mkdir -p /srv/www/nano/

Nakonec otestujte konfiguraci Nginx a restartujte ji:

nginx -t
systemctl restart nginx

Ujistěte se, že příkaz nginx -t nezobrazuje chybovou zprávu.

Krok 6 – Nainstalujte WordPress

V kroku 5 jsme vytvořili konfiguraci virtuálního hostitele pro naši instalaci WordPress. Stačí si tedy nyní stáhnout WordPress a poté upravit konfiguraci databáze, kterou jsme vytvořili v kroku 2.

Přejděte do kořenového adresáře webu „/srv/www/nano“ a stáhněte si archiv ZIP WordPress pomocí příkazu wget:

cd /srv/www/nano
wget wordpress.org/latest.zip

Extrahujte „latest.zip“  a přesuňte všechny soubory a adresáře WordPress do adresáře nano:

unzip latest.zip
mv wordpress/* .

Dále zkopírujte soubor „wp-config-sample.php“ do „wp-config.php“ a upravte pomocí vim:

cp wp-config-sample.php wp-config.php
vim wp-config.php

Změňte DB_NAME na naši databázi "wpdb" , DB_USER na "wpuser" a DB_PASSWORD na „[e-mail chráněn]“ .

define('DB_NAME', 'wpdb');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', '[email protected]');
define('DB_HOST', 'localhost');

Uložte a ukončete.

Nyní otevřete webový prohlížeč a do adresního řádku zadejte název domény.

Budete přesměrováni na www.hakasenano.co a uvidíte stránku instalace.

A můžete vyplnit název a popis webu svými informacemi a kliknout na "Instalovat Wordpress".

Počkejte na dokončení instalace a zobrazí se přihlašovací stránka níže. Kliknutím na „Přihlásit se“ se přihlaste do administračního panelu WordPress:

Zadejte své administrátorské uživatelské jméno a heslo a poté znovu klikněte na „Přihlásit se“.

Nyní jste v administračním panelu WordPress.

Nyní je nainstalován Wordpress s Nginx a HHVM na OpenSUSE Leap 42.1.


OpenSuse
  1. Jak nainstalovat Mysql Server 8 na OpenSUSE Leap 15.3

  2. Jak nainstalovat a používat Podman v OpenSUSE Leap 15.3

  3. Jak nainstalovat a nastavit Nginx jako proxy OpenSUSE Leap 15.3

  1. Jak nainstalovat a nakonfigurovat Mariadb 10 v OpenSUSE Leap 15.3

  2. Jak nainstalovat a nastavit PHP a Nginx (LEMP) na OpenSUSE Leap 15.3

  3. Jak nainstalovat a nakonfigurovat Squid Proxy na OpenSUSE Leap 11

  1. Jak nainstalovat PostgreSQL a phpPgAdmin na OpenSUSE Leap 42.1

  2. Jak nainstalovat Seafile s Nginx na openSUSE Leap 42.1

  3. Jak nainstalovat Nginx s PHP-FPM a MySQL na openSUSE 12.1