Kako namestiti PyroCMS na FreeBSD 11

PyroCMS je odprtokodni CMS, napisan v PHP. Izvorna koda PyroCMS gostuje na GitHubu . V tem priročniku se bomo sprehodili skozi celoten postopek namestitve PyroCMS na primerku FreeBSD 11 Vultr. Programski sklad, ki ga bomo uporabili, je: PHP, Nginx, MariaDB in Composer.

Zahteve

Preden lahko namestite PyroCMS na strežnik, je treba izpolniti nekaj zahtev.

  • VPS z vsaj 1 GB RAM-a.
  • PyroCMS podpira Apache ali Nginx, vendar bomo uporabljali sklad LEMP.
  • PHP različica 7.0 ali novejša.
  • Naslednje razširitve PHP:
    • PDO
    • cURL
    • SQLite
    • OpenSSL
    • Mbstring
    • Fileinfo
    • Tokenizer
    • GD Library, (različica 2.0 ali novejša); ali Imagick, (različica 6.5.7 ali novejša)

Preden začneš

Preverite različico FreeBSD.

uname -ro
# FreeBSD 11.2-RELEASE

Prepričajte se, da je vaš sistem FreeBSD posodobljen.

freebsd-update fetch install
pkg update && pkg upgrade -y

Namesti sudo, vim, unzip, wgetin bashpakete, če niso prisotni na vašem sistemu.

pkg install -y sudo vim unzip wget bash

Ustvarite nov uporabniški račun s svojim želenim uporabniškim imenom, mi bomo uporabili johndoe.

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Zaženite visudoukaz in razkomentirajte %wheel ALL=(ALL) ALLvrstico, da omogočite članom wheelskupine, da izvedejo kateri koli ukaz.

# Uncomment by removing the hash (#) sign
%wheel ALL=(ALL) ALL

Zdaj preklopite na novo ustvarjenega uporabnika.

su - johndoe

OPOMBA: Zamenjajte johndoez vašim uporabniškim imenom.

Nastavite časovni pas.

sudo tzsetup

Namesti PHP

Namestite PHP in potrebne razširitve PHP.

sudo pkg install -y php72 php72-pdo php72-curl php72-sqlite3 php72-openssl php72-mbstring php72-fileinfo php72-tokenizer php72-gd php72-pecl-imagick php72-phar php72-zlib php72-json php72-mbstring php72-xml php72-zip php72-ctype php72-dom php72-simplexml php72-hash php72-filter php72-session php72-pdo_sqlite php72-iconv php72-intl php72-pcntl php72-soap php72-posix php72-mysqli php72-pdo_mysql

Preverite različico.

php --version

# PHP 7.2.10 (cli) (built: Oct  2 2018 01:30:18) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies

Mehka povezava php.ini-productiondo php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Omogočite in zaženite PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Namestite MariaDB

Prenesite in namestite MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Preverite različico.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.17-MariaDB, for FreeBSD11.2 (amd64) using readline 5.1

Omogočite in zaženite MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Zaženite mysql_secure_installationskript, da izboljšate varnost svoje namestitve.

sudo mysql_secure_installation

Prijavite se v MariaDB kot root uporabnik.

sudo mysql -u root -p
# Enter password:

Ustvarite novo bazo podatkov in uporabnika ter si zapomnite poverilnice.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Zapustite MariaDB.

exit

Namestite Nginx

Namestite Nginx.

sudo pkg install -y nginx

Preverite različico.

nginx -v
# nginx version: nginx/1.14.0

Omogočite in zaženite Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Zaženite sudo vim /usr/local/etc/nginx/pyro.confin konfigurirajte Nginx za Pyro CMS.

server {
  listen 80;

  server_name example.com; # Check this
  root /usr/local/www/pyro/public; # Check this

  index index.php index.html;
  charset utf-8;

  location / {
    try_files $uri $uri/ /index.php?$args;
  }

  location ~ \.php$ {
    fastcgi_pass 127.0.0.1:9000; # Run sockstat -4 -6 | grep php-fpm
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
}

Shranite datoteko in zapustite.

Zdaj moramo vključiti pyro.confv glavno nginx.confdatoteko.

Zaženite sudo vim /usr/local/etc/nginx/nginx.confin dodajte naslednjo vrstico v http {}blok.

include pyro.conf;

Preizkusite konfiguracijo Nginx.

sudo nginx -t

Ponovno naložite Nginx.

sudo service nginx reload

Namesti Composer

Namestite Composer globalno.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Preverite različico.

composer --version
# Composer version 1.7.2 2018-08-16 16:57:12

Namestite PyroCMS prek Composerja

Ustvarite korenski imenik dokumenta.

sudo mkdir -p /usr/local/www/pyro

Spremenite lastništvo /usr/local/www/pyroimenika v johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/pyro

Pomaknite se do korenskega imenika dokumenta.

cd /usr/local/www/pyro

Z uporabo composer, prenesite in namestite PyroCMS.

composer create-project pyrocms/pyrocms .

OPOMBA: pri namestitvi Pyro prek Composerja vam lahko zmanjka pomnilnika. Morda bi bilo pametno, da ustavite Nginx, PHP-FPM in MariaDB, da prihranite pri uporabi pomnilnika, in jih po tem koraku znova zaženete. Če vam to ne pomaga, da se izognete napakam pri Composerju, boste morali dodati zadostno količino prostora za zamenjavo .

Spremenite lastništvo /usr/local/www/pyroimenika v www.

sudo chown -R www:www /usr/local/www/pyro

Z želenim spletnim brskalnikom odprite svoje spletno mesto in sledite namestitvenemu programu PyroCMS. Ko sledite namestitvenemu programu, boste PyroCMS zagnali in zagnali. Za dostop do skrbniškega območja PyroCMS samo pripnite /adminURL svojega spletnega mesta.

BSD, CMS, PHP, strežniške aplikacije

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več