Instalowanie Fork CMS na Fedorze 28

Fork to open source CMS napisany w PHP. Kod źródłowy Fork znajduje się na GitHub . Ten przewodnik pokaże Ci, jak zainstalować Fork CMS na nowej instancji Fedory 28 Vultr.

Wymagania

  • PHP 7.1 lub nowszy.
  • MySQL 5.0 lub nowszy.
  • Nginx czy Apache 2.0 z .htaccess, mod rewrite, mod expires(opcjonalne, ale zalecane) i mod deflate(opcjonalnie) włączona.

Zanim zaczniesz

Sprawdź wersję Fedory.

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

Utwórz nowe konto użytkownika innego niż root z sudodostępem i przejdź do niego. Zastąp johndoeswoją nazwą użytkownika.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

Ustaw strefę czasową.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Upewnij się, że twój system jest aktualny.

sudo dnf check-upgrade || sudo dnf upgrade -y

Zainstaluj wymagane i przydatne pakiety.

sudo dnf install -y wget vim unzip bash-completion

Dla uproszczenia wyłącz SELinux i Firewall.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Krok 1 - Zainstaluj PHP, wymagane rozszerzenia PHP, Nginx i MySQL

Pobierz i zainstaluj PHP i wymagane rozszerzenia PHP.

sudo dnf install -y php-cli php-fpm php-common php-mbstring php-gd php-intl php-mysqlnd php-xml php-json

Sprawdź wersję PHP.

php --version
# PHP 7.2.6 (cli) (built: May 22 2018 16:22:08) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Zainstaluj Nginx.

sudo dnf install -y nginx

Sprawdź wersję Nginx.

nginx -v
# nginx version: nginx/1.12.1

Uruchom i włącz Nginx.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

Zainstaluj MariaDB.

sudo dnf install -y mariadb-server

Sprawdź wersję MariaDB.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.15-MariaDB, for Linux (x86_64) using readline 5.1

Uruchom i włącz MariaDB.

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

Uruchom mysql_secure_installationskrypt, aby poprawić bezpieczeństwo instalacji MariaDB.

sudo mysql_secure_installation

Zaloguj się do MariaDB jako użytkownik root.

mysql -u root -p
# Enter password:

Utwórz nową bazę danych i użytkownika MariaDB i zapamiętaj poświadczenia.

create database dbname;
grant all on dbname.* to 'username' identified by 'password';

Wyjdź z MySQL.

exit

Krok 2 - Skonfiguruj Nginx

Uruchom sudo vi /etc/nginx/conf.d/fork.confi wypełnij go następującymi informacjami.

server {
  listen 80;

  root /var/www/fork;
  index index.php index.html;

  server_name example.com;

  location / {
    # Checks whether the requested url exists as a file $uri or directory $uri/ in the root, else redirect to /index.php.
    try_files $uri $uri/ @redirects;
  }

  location @redirects {
    rewrite ^ /index.php;
  }

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_pass unix:/run/php-fpm/www.sock; # Make sure to doublecheck this!
    fastcgi_index index.php;
    fastcgi_read_timeout 60;
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }

  # Don't pollute the logs with common requests
  location = /robots.txt  { access_log off; log_not_found off; }
  location = /favicon.ico { access_log off; log_not_found off; }

  # As Fork CMS has the app_root as doc_root, we need to restrict access to a few things for security purposes!
  location ~* ^/(composer\..*|vendor\/.*|Procfile$|\.git\/.*|src\/Console.*|.*\.gitignore|\.editorconfig|\.travis.yml|autoload\.php|bower\.json|phpunit\.xml\.dist|.*\.md|app\/logs\/.*|app\/config\/.*|src\/Frontend\/Cache\/CompiledTemplates.*|src\/Frontend\/Cache\/Locale\/.*\.php|src\/Frontend\/Cache\/Navigation\/.*\.php|src\/Frontend\/Cache\/Search\/.*|src\/Backend\/Cache\/CompiledTemplates\/.*|src\/Backend\/Cache\/Locale\/.*\.php)$ {
    deny all;
    access_log off;
    log_not_found off;
  }

  # Deny access to dot-files.
  location ~ /\. {
    deny all;
    access_log off;
    log_not_found off;
  }
}

Podsumowanie zmian, które wprowadzisz, są następujące.

  • Zmień wartość rootdyrektywy, aby wskazywała prawidłową lokalizację witryny, np /var/www/fork.
  • Zmień wartość server_namedyrektywy, aby wskazywała nazwę domeny lub adres IP.
  • Sprawdź, czy fastcgi_passjest ustawiony poprawnie.

Przetestuj konfigurację Nginx.

sudo nginx -t

Załaduj ponownie Nginx.

sudo systemctl reload nginx.service

Krok 3 - Pobierz i zainstaluj Composer

Pobierz zależności Composer.

sudo dnf install -y curl git unzip

Pobierz i zainstaluj Composer, menedżera zależności dla PHP.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { 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

Sprawdź wersję Composer.

composer --version
# Composer version 1.6.5 2018-05-04 11:44:59

Krok 4 - Pobierz i zainstaluj Fork CMS przez Composer

Utwórz katalog główny dokumentu.

sudo mkdir -p /var/www/fork

Zmień własność /var/www/forkkatalogu na johndoe.

sudo chown -R johndoe:johndoe /var/www/fork

Pobierz najnowszą stabilną wersję Fork CMS z wiersza poleceń.

cd /var/www/fork
composer create-project forkcms/forkcms .

Zmień własność /var/www/forkkatalogu na nginx.

sudo chown -R nginx:nginx /var/www/fork

Uruchom sudo vim /etc/php-fpm.d/www.confi ustaw użytkownika i grupę na nginx.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Restart php-fpm.service.

sudo systemctl restart php-fpm.service

Edytuj app/config/parameters.yml.distplik i ustaw informacje o bazie danych.

sudo vim /var/www/fork/app/config/parameters_install.yml

Utwórz /var/lib/php/sessionkatalog i zmień jego własność na użytkownika nginx.

sudo mkdir -p /var/lib/php/session
sudo chown -R nginx:nginx /var/lib/php/session

Na koniec, korzystając z preferowanej przeglądarki internetowej, otwórz witrynę i postępuj zgodnie z instrukcjami Fork CMSinstalatora. Po wykonaniu instalacji pojawi się instancja Fork. Aby uzyskać dostęp do obszaru administracyjnego Fork, wystarczy dołączyć /privateadres URL swojej witryny.

Zostaw komentarz

Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.