Anchor CMS te installeren op CentOS 7

Anchor is een lichtgewicht open source blog CMS geschreven in PHP. De broncode van Anchor wordt gehost op GitHub. Deze handleiding laat zien hoe je Anchor CMS installeert op een CentOS 7 systeem.

Vereisten

Zorg ervoor dat je server aan de volgende eisen voldoet.

  • MySQL 5.6 of hoger (MySQL 5.7 aanbevolen)
  • PHP 5.6 of hoger met de volgende PHP-extensies: (curlmcrypt,gd,mbstring,pdo_mysql of pdo_sqlite)
  • Apache of Nginx. In deze tutorial gebruiken we Nginx.

Voorwaarden

  • CentOS 7 besturingssysteem.
  • Een niet-root gebruiker met sudo privileges.

Eerste stappen

Controleer je CentOS systeemversie:

cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)

Stel de tijdzone in:

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

Werk de pakketten van je besturingssysteem bij:

sudo yum update -y

Installeer enkele nuttige pakketten als ze nog niet geïnstalleerd zijn:

sudo yum install -y vim wget curl git unzip bash-completion

Stap 1 – Installeer PHP en noodzakelijke PHP-extensies.

Anchor CMS vereist PHP versie 5.6 of hoger. De standaard CentOS repositories bevatten een oudere versie van PHP, en dus zullen we een repository van derden moeten opzetten om een nieuwere PHP versie te installeren. We zullen de Webtatic repository gebruiken.

Stel de Webtatic YUM repo in:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Installeer PHP, evenals de benodigde PHP-extensies:

sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-curl php72w-mysql php72w-sqlite3 php72w-gd php72w-mcrypt php72w-dom

Controleer de PHP versie:

php --version

# PHP 7.2.12 (cli) (built: Nov 11 2018 14:54:16) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Start en schakel PHP-FPM service in:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Stap 2 – Installeer MariaDB en maak een database aan voor Anchor CMS

Anchor ondersteunt MySQL/MariaDB en SQLite databases. De standaard CentOS repository bevat een niet-ondersteunde versie van MariaDB. Daarom zullen we de officiële MariaDB repository gebruiken die een nieuwere versie van MariaDB bevat.

Maak een MariaDB YUM repository voor CentOS:

sudo vim /etc/yum.repos.d/MariaDB.repo

Kopieer en plak de volgende tekst erin:

# MariaDB 10.2 CentOS repository list - created 2017-12-11 23:19 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name=MariaDB
baseurl=https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Nadat het bestand op zijn plaats staat, installeer je MariaDB door uit te voeren:

sudo yum install -y MariaDB-server MariaDB-client

Controleer de MariaDB versie:

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

Start en schakel de MariaDB service in:

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

Voer mysql_secure installation script uit om de beveiliging van MariaDB te verbeteren en stel het wachtwoord in voor MariaDBroot gebruiker:

sudo mysql_secure_installation

Beantwoord alle vragen zoals hieronder aangegeven:

Enter current password for root (enter for none):
Set root password? [Y/n]: Y
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]: Y
Reload privilege tables now? [Y/n]: Y

Log in op MariaDB shell als de gebruiker root:

mysql -u root -p
# Enter password

Maak een MariaDB database en gebruiker aan die je gaat gebruiken voor je installatie van Anchor CMS, en onthoud de credentials:

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

Verlaat de MariaDB-shell:

quit

Stap 3 - Installeer en configureer Nginx

Installeer Nginx webserver:

sudo yum install -y nginx

Controleer de Nginx versie:

nginx -v
# nginx version: nginx/1.12.2

Start en activeer de Nginx service:

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

Draa i sudo vim /etc/nginx/conf.d/anchor.confen vul het bestand met de volgende configuratie:

server {
    listen 80;

    server_name example.com;
    root /var/www/anchor;

    index index.php index.html;

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

}

Test Nginx configuratie:

sudo nginx -t

Herlaad Nginx:

sudo systemctl reload nginx.service

Stap 4 - Download en installeer Composer

Om Anchor succesvol te installeren, moeten we Composer installeren, de afhankelijkheidsmanager voor PHP toepassingen:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { 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

Controleer de Composer versie.

composer --version
# Composer version 1.8.0 2018-12-03 10:31:16

Stap 5 - Download en installeer Anchor CMS

Maak een document root directory:

sudo mkdir -p /var/www/anchor

Verander het eigendom van de /var/www/limesurvey directory in [jour_user].:

sudo chown -R [your_user]:[your_user] /var/www/anchor

Navigeer naar de document root:

cd /var/www/anchor

Download de laatste release van Anchor CMS met behulp van Composer:

composer create-project anchorcms/anchor-cms .

Verander het eigendom van de /var/www/anchor directory in nginx:

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

Maak de directory/var/lib/php/session en stel het eigendom in op nginx.

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

Voer sudo vim /etc/php-fpm.d/www.conf uit en stel de gebruiker en groep in op nginx. Aanvankelijk zijn ze ingesteld op apache:

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

Herstart de PHP-FPM service:

sudo systemctl restart php-fpm.service

Stap 6 - Voltooi de installatie van het Anchor CMS

Open je webbrowser en typ de URL "http://example.com". Je wordt doorgestuurd naar de volgende pagina:

Anchor CMS web installer

Klik op de"Run the installer" knop, om Anchor CMS web installer te starten. Daarna zou de taal en tijdzone pagina moeten verschijnen:

Selecteer taal en tijdzone

Selecteer de gewenste instellingen en klik op de knop"Volgende stap" om door te gaan naar de database configuratie pagina:

Database instellingen

Voer je databasegegevens in, en klik op de knop"Volgende stap" om door te gaan naar de site metadata configuratie pagina:

Site Metadata

Je kunt hier de sitenaam of sitebeschrijving instellen, of de standaardwaarden laten staan en deze later wijzigen via de backend interface van Anchor. Klik op de knop"Volgende stap" voor de volgende stap, namelijk het instellen van je eerste account:

Beheerdersaccount aanmaken

Na het instellen van je eerste account klik je op de knop"Voltooien" om het installatieproces te voltooien.

Als je de installatie hebt voltooid, zorg er dan voor dat je de mapinstall om veiligheidsredenen verwijdert .

sudo rm -rf /var/www/anchor/install

Links