Kako namestiti Craft CMS na FreeBSD 12

Uvod

Craft CMS je odprtokodni CMS, napisan v PHP. Izvorna koda Craft CMS gostuje na GitHubu . Ta priročnik vam bo pokazal, kako namestiti Craft CMS z Nginxom na nov primerek FreeBSD 12 Vultr.

Zahteve

Obrt zahteva naslednje:

  • PHP različica 7.0 ali novejša z naslednjimi razširitvami:
    • ctype
    • curl
    • gd oz imagemagick
    • iconv
    • json
    • mbstring
    • openssl
    • pcre
    • pdo
    • pdo mysql
    • pdo postgresql
    • reflection
    • spl
    • zip
    • intl
    • dom
  • MySQL različica 5.5 ali novejša z InnoDB, MariaDB različica 5.5 ali novejša ali PostgreSQL različica 9.5 ali novejša
  • Vsaj 256 MB pomnilnika, dodeljenega PHP-ju
  • Vsaj 200 MB prostega prostora na disku
  • Nginx
  • Skladatelj

Preden začneš

Preverite različico FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

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

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

Namestite potrebne pakete.

pkg install -y sudo vim unzip curl wget bash socat git

Ustvarite nov uporabniški račun s svojim želenim uporabniškim imenom. Uporabili bomo 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.

visudo

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

Zdaj preklopite na novo ustvarjenega uporabnika z su.

su - johndoe

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

Nastavite časovni pas.

sudo tzsetup

1. korak - Namestite PHP in potrebne razširitve PHP

Namestite PHP in potrebne razširitve PHP.

sudo pkg install -y php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-pecl-imagick php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-mysqli php72-phar php72-opcache

Preverite različico.

php --version
# PHP 7.2.19 (cli) (built: Jun 13 2019 01:11:35) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 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

2. korak - Namestite MariaDB in ustvarite bazo podatkov

Namestite MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Preverite različico.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Zaženite in omogočite MariaDB.

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

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

sudo mysql_secure_installation

Prijavite se v MariaDB kot root uporabnik.

mysql -u root -p
# Enter password:

Ustvarite novo bazo podatkov in uporabnika. Zapomni si poverilnice za tega novega uporabnika.

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

3. korak - Namestite in konfigurirajte Nginx

Namestite Nginx.

sudo pkg install -y nginx

Preverite različico.

nginx -v
# nginx version: nginx/1.14.2

Omogočite in zaženite Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Zaženite sudo vim /usr/local/etc/nginx/craft.confin nastavite Nginx za Craft.

server {

  listen 80;
  listen [::]:80;
  server_name example.com;
  root /usr/local/www/craft/web;

  index index.php;

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

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }

}

Shranite datoteko in zapustite.

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

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

include craft.conf;

Preizkusite konfiguracijo.

sudo nginx -t

Ponovno naložite Nginx.

sudo service nginx reload

4. korak - Namestite 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.8.6 2019-06-11 15:03:05

5. korak - Prenesite in namestite Craft CMS

Ustvarite korenski imenik dokumenta.

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

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

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

Pomaknite se do korenskega imenika dokumenta.

cd /usr/local/www/craft

Prenesite najnovejšo stabilno izdajo Craft CMS prek composer.

composer create-project craftcms/craft .

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

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

V spletnem brskalniku pojdite na http://<Hostname>/index.php?p=admin/install, zamenjajte <Hostname>z imenom gostitelja spletnega strežnika. Pozdravil vas bo Craftov čarovnik za nastavitev. Za dostop do Craftovega skrbniškega vmesnika pripnite /adminsvoj IP/domena.

BSD, CMS, 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č