Instalowanie Fork CMS na Ubuntu 16.04 LTS

Fork to open source CMS napisany w PHP. Kod źródłowy Fork znajduje się na GitHub . W tym przewodniku dowiesz się, jak zainstalować Fork CMS na nowej instancji Ubuntu 16.04 LTS 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ę Ubuntu.

lsb_release -ds
# Ubuntu 16.04.3 LTS

Utwórz nowe non-rootkonto użytkownika z sudodostępem i przejdź do niego.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

UWAGA : Zamień na johndoeswoją nazwę użytkownika.

Ustaw strefę czasową.

sudo dpkg-reconfigure tzdata

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

sudo apt update && sudo apt upgrade -y

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

Ubuntu nie zapewnia najnowszej wersji PHP w swoich domyślnych repozytoriach oprogramowania. Zamiast tego będziemy musieli dodać utrzymywane przez społeczność Personal Package Archive ( PPA ).

Pobierz i zainstaluj PHP 7.1 oraz wymagane rozszerzenia PHP.

sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
sudo apt install -y php7.1 php7.1-cli php7.1-fpm php7.1-curl php7.1-mbstring php7.1-gd php7.1-intl php7.1-mysql php7.1-xml

Sprawdź wersję PHP.

php --version

# PHP 7.1.11-1+ubuntu16.04.1+deb.sury.org+1 (cli) (built: Oct 27 2017 13:49:56) ( NTS )
# Copyright (c) 1997-2017 The PHP Group
# Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
#     with Zend OPcache v7.1.11-1+ubuntu16.04.1+deb.sury.org+1, Copyright (c) 1999-2017, by Zend Technologies

Ponieważ istnieje wiele istniejących Vultr Docs szczegółowo opisujących instalację MySQL i NGINX, w tym artykule opisano tylko konfigurację NGINX.

Krok 2 - Skonfiguruj NGINX

Uruchom sudo vim /etc/nginx/sites-available/fork.confi skopiuj / wklej następujące.

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:/var/run/php/php7.1-fpm.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.

Aktywuj nową fork.confkonfigurację, łącząc plik z sites-enabledkatalogiem.

sudo ln -s /etc/nginx/sites-available/fork.conf /etc/nginx/sites-enabled/

Przetestuj konfigurację NGINX.

sudo nginx -t

Załaduj ponownie NGINX i uruchom ponownie PHP7.1-FPM.

    sudo systemctl reload nginx.service
    sudo systemctl restart php7.1-fpm.service

Krok 3 - Pobierz i zainstaluj Composer

Pobierz zależności Composer.

sudo apt 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.5.2 2017-09-11 16:59:25

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 www-data.

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

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

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

Korzystając z preferowanej przeglądarki internetowej, otwórz witrynę i postępuj zgodnie z instrukcjami Fork CMSinstalatora. Po podążeniu za instalatorem powinieneś uruchomić 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.