How to Install Anchor CMS on a Fedora 26 LAMP VPS

Anchor CMS — це надпроста і надзвичайно легка, безкоштовна система керування вмістом (CMS) з відкритим кодом, яка підтримує редагування вмісту в Markdown або HTML і повністю сумісна з i18n із коробки. Створювати та змінювати теми так само легко, як писати дуже прості PHP та HTML/CSS, тому немає нових мов шаблонів для вивчення. Anchor CMS важить лише 250 КБ (стиснутий), тому це ідеальне рішення для веб-розробників і блогерів, які втомилися від вірусних програм і просто хочуть простий і мінімалістичний механізм для ведення блогів, який виконує роботу без будь-яких додаткових ускладнень.

У цьому підручнику ми збираємося встановити Anchor CMS на Fedora 26 LAMP VPS за допомогою веб-сервера Apache, PHP 7.1 і бази даних MariaDB.

Передумови

  • Чистий екземпляр сервера Vultr Fedora 26 з доступом по SSH

Крок 1: Додайте користувача Sudo

Ми почнемо з додавання нового sudoкористувача.

Спочатку увійдіть на свій сервер як root:

ssh root@YOUR_VULTR_IP_ADDRESS

Додайте нового користувача user1(або бажане ім’я користувача):

useradd user1

Далі встановіть пароль для user1користувача:

passwd user1

Коли з’явиться запит, введіть надійний і запам’ятовується пароль.

Тепер перевірте /etc/sudoersфайл, щоб переконатися, що sudoersгрупа ввімкнена:

visudo

Шукайте такий розділ:

%wheel        ALL=(ALL)       ALL

Переконайтеся, що він не прокоментований. Цей рядок повідомляє нам, що користувачі, які є членами wheelгрупи, можуть використовувати sudoкоманду для отримання rootпривілеїв.

Після того, як ви відредагували файл, ви можете зберегти та вийти, натиснувши Escта ввівши, :wqщоб «записати» та «закрити» файл.

Далі нам потрібно додати user1до wheelгрупи:

usermod -aG wheel user1

Ми можемо перевірити user1членство в групі та перевірити, чи usermodкоманда працювала з groupsкомандою:

groups user1

Тепер скористайтеся suкомандою, щоб перейти до нового user1облікового запису користувача sudo :

su - user1

Командний рядок оновиться, щоб вказати, що ви тепер увійшли в user1обліковий запис. Ви можете перевірити це за допомогою whoamiкоманди:

whoami

Тепер перезапустіть sshdслужбу, щоб ви могли ввійти за sshдопомогою нового облікового запису sudo, який ви щойно створили:

sudo systemctl restart sshd

Вийти з user1облікового запису:

exit

Вийдіть з rootоблікового запису (що призведе до відключення вашого sshсеансу):

exit

Тепер ви можете зайти sshна екземпляр сервера з вашого локального хоста за допомогою нового user1облікового запису користувача sudo без root прав :

ssh user1@YOUR_VULTR_IP_ADDRESS

Якщо ви хочете виконати sudo без необхідності щоразу вводити пароль, відкрийте /etc/sudoersфайл знову, використовуючи visudo:

sudo visudo

Відредагуйте розділ для wheelгрупи, щоб він виглядав так:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Зверніть увагу: вимкнення вимоги щодо пароля для користувача sudo не рекомендовано, але воно включено тут, оскільки це може зробити конфігурацію сервера набагато зручнішою та менш неприємною, особливо під час тривалих сеансів адміністрування системи. Якщо вас турбують наслідки для безпеки, ви завжди можете повернути зміну конфігурації до початкової після завершення завдань адміністрування.

Щоразу, коли ви хочете ввійти в rootобліковий запис користувача з облікового запису sudoкористувача, ви можете використовувати одну з наступних команд:

sudo -i
sudo su -

You can exit the root account and return back to your sudo user account any time by simply typing the following:

exit

Step 2: Update Fedora 26 System

Before installing any packages on the Fedora server instance, we will first update the system.

Make sure you are logged in to the server using a non-root sudo user and run the following command:

sudo dnf -y update

Step 3: Install Apache Web Server

Install the Apache web server:

sudo dnf -y install httpd

Then use the systemctl command to start and enable Apache to execute automatically at boot time:

sudo systemctl enable httpd
sudo systemctl start httpd

Check your Apache configuration file to ensure that the DocumentRoot directive points to the correct directory:

sudo vi /etc/httpd/conf/httpd.conf

The DocumentRoot configuration option will look like this:

DocumentRoot "/var/www/html"

Now, let's make sure that the mod_rewrite Apache module is loaded. We can do this by searching the Apache base modules configuration file for the term "mod_rewrite".

Open the file:

sudo vi /etc/httpd/conf.modules.d/00-base.conf

Search for the term mod_rewrite.

If the mod_rewrite Apache module is loaded, you will find a configuration line looking like this:

LoadModule rewrite_module modules/mod_rewrite.so

If the above line starts with a semi-colon, you will need to remove the semi-colon to uncomment the line and load the module. This, of course, applies to any other required Apache modules too.

We now need to edit Apache's default configuration file so that mod_rewrite will work correctly with Anchor CMS.

Open the file:

sudo vi /etc/httpd/conf/httpd.conf

Then find the section that starts with <Directory "/var/www/html"> and change AllowOverride none to AllowOverride All. The end result (with all comments removed) will look something like this:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Now save and close the Apache configuration file.

We will restart Apache at the end of this tutorial, but restarting Apache regularly during installation and configuration is certainly a good habit, so let's do it now:

sudo systemctl restart httpd

Step 4: Open Web Firewall Ports

We now need to open the default HTTP and HTTPS ports as they will be blocked by firewalld by default.

Open the firewall ports:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

Reload the firewall to apply the changes:

sudo firewall-cmd --reload

You will see the word success displayed in your terminal after each successful firewall configuration command.

We can quickly verify that the Apache HTTP port is open by visiting the IP address or domain of the server instance in a browser:

http://YOUR_VULTR_IP_ADDRESS/

You will see the default Apache web page in your browser.

Step 5: Disable SELinux

SELinux stands for "Security Enhanced Linux". It is a security enhancement to Linux which allows users and administrators more control over access control. It is enabled by default in Fedora 26, but it is definitely not essential for server security as many Linux server distributions do not ship with it installed or enabled by default.

To avoid file permission problems with Anchor CMS later down the line, we are going to disable SELinux, for now. Open the SELinux configuration file with your favourite terminal editor:

sudo vi /etc/selinux/config

Change SELINUX=enforcing to SELINUX=disabled and then save the file.

To apply the configuration change, SELinux requires a server reboot, so you can either restart the server using the Vultr control panel or you can simply use the shutdown command:

sudo shutdown -r now

When the server reboots, your SSH session will get disconnected and you may see a message informing you about a 'broken pipe' or 'Connection closed by remote host'. This is nothing to worry about, simply wait for 20 seconds or so and then SSH back in again (with your own username and domain):

ssh user1@YOUR_DOMAIN

Or (with your own username and IP address):

ssh user1@YOUR_VULTR_IP_ADDRESS

Once you have logged back in, you should check the status of SELinux again with the sestatus command to make sure it is properly disabled:

sudo sestatus

You should see a message saying SELinux status: disabled. If you see a message saying SELinux status: enabled (or something similar) you will need to repeat the above steps and ensure that you properly restart your server.

Step 6: Install PHP 7.1

We can now install PHP 7.1 along with all of the necessary PHP modules required by Anchor CMS:

sudo dnf -y install php php-mysqlnd php-mbstring php-gd php-common php-pdo php-pecl-imagick php-xml php-zip

Step 7: Install MariaDB (MySQL) Server

Fedora 26 defaults to using MariaDB database server, which is an enhanced, fully open source, community developed, drop-in replacement for MySQL server.

Install MariaDB database server:

sudo dnf -y install mariadb-server

Start and enable MariaDB server to execute automatically at boot time:

sudo systemctl enable mariadb
sudo systemctl start mariadb    

Secure your MariaDB server installation:

sudo mysql_secure_installation

The root password will be blank, so simply hit enter when prompted for the root password.

When prompted to create a MariaDB/MySQL root user, select "Y" (for yes) and then enter a secure root password. Simply answer "Y" to all of the other yes/no questions as the default suggestions are the most secure options.

Step 8: Create Database for Anchor CMS

Log into the MariaDB shell as the MariaDB root user by running the following command:

sudo mysql -u root -p

To access the MariaDB command prompt, simply enter the MariaDB root password when prompted.

Run the following queries to create a MariaDB database and database user for Anchor CMS:

CREATE DATABASE anchor_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'anchor_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON anchor_db.* TO 'anchor_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

You can replace the database name anchor_db and username anchor_user with something more to your liking, if you prefer. Also, make sure that you replace "UltraSecurePassword" with an actually secure password.

Step 9: Install Anchor CMS Files

Change your current working directory to the default web directory:

cd /var/www/html/

If you get an error message saying something like 'No such file or directory' then try the following command:

cd /var/www/ ; sudo mkdir html ; cd html

Your current working directory should now be: /var/www/html/. You can check this with the pwd (print working directory) command:

pwd

Now use wget to download the Anchor CMS installation package:

sudo wget https://github.com/anchorcms/anchor-cms/archive/0.12.3a.zip

Please note: You should definitely check for the most recent version by visiting the Anchor CMS download page.

List the current directory to check that you have successfully downloaded the file:

ls -la

Let's quickly install unzip so we can unzip the file:

sudo dnf -y install unzip

Now uncompress the zip archive:

sudo unzip 0.12.3a.zip

Move all of the installation files to the web root directory:

sudo mv anchor-cms-0.12.3a/* /var/www/html

Change ownership of the web files to avoid any permissions problems:

sudo chown -R apache:apache * ./

Restart Apache again:

sudo systemctl restart httpd

Step 10: Install and Run Composer

Anchor CMS requires us to use composer to download some plugins so we first need to install composer:

sudo dnf -y install composer

Now make sure you are in the webroot directory:

cd /var/www/html

Run composer using the apache user:

sudo -u apache composer install -d /var/www/html/

You should see some warning messages from composer about not being able to write to the cache, but don't worry too much about that as everything should still install just fine.

We're now ready to move on to the final step.

Step 11: Complete Anchor CMS Installation

It's time to visit the IP address of your server instance in your browser, or if you've already configured your Vultr DNS settings (and given it enough time to propagate) you can simply visit your domain instead.

To access the Anchor CMS installation page, enter your Vultr instance IP address into your browser address bar, followed by /index.php:

http://YOUR_VULTR_IP_ADDRESS/index.php

Most of the installation options are self explanatory, but here are a few pointers to help you along:

  1. On the Anchor CMS landing page, simply click on the Run the installer button to start the installation process.

  2. Select your Language and Timezone and click on the Next Step button.

  3. On the Database Details page, enter the following database values:

    Database Host:          localhost
    Port:                   3306
    Username:               anchor_user
    Password:               UltraSecurePassword
    Database Name:          anchor_db
    Table Prefix:           anchor_
    Collation:              utf8_unicode_ci
    

    Click Next Step to continue.

  4. On the Site metadata page, enter the following details:

    Site Name:              <your site name>
    Site Description:       <a site description>
    Site Path:              /
    

    Click Next Step to continue.

  5. Next enter appropriate admin login details:

    Username:               admin   
    Email Address:          <admin email address>
    Password:               <admin password>
    
  6. Click on the Complete button to finalize the installation.

You will see a bright green page with the message Install complete!.

To access the admin section simply click on the Visit your admin panel button and enter your username and password. If you aren't redirected to the admin login page, you can enter the admin address manually:

http://YOUR_VULTR_IP_ADDRESS/admin/panel

For security reasons, make sure you delete the /install/ directory from the webroot directory:

sudo rm -rf ./install/

You are now ready to start adding your content and configuring the look and feel of your site. Make sure you check out the Anchor CMS documentation for more information about how to build and configure your site.


Як встановити Thelia 2.3 на Debian 9

Як встановити Thelia 2.3 на Debian 9

Використання іншої системи? Thelia — інструмент із відкритим кодом для створення веб-сайтів електронного бізнесу та керування онлайн-контентом, написаним на PHP. Вихідний код Thelia i

Як встановити Microweber на CentOS 7

Як встановити Microweber на CentOS 7

Використання іншої системи? Microweber — це CMS та інтернет-магазин із відкритим вихідним кодом. Вихідний код Microweber розміщено на GitHub. Цей посібник покаже вам

Встановлення Microweber на Ubuntu 16.04

Встановлення Microweber на Ubuntu 16.04

Використання іншої системи? Microweber — це CMS та інтернет-магазин із відкритим вихідним кодом. Вихідний код Microweber розміщено на GitHub. Цей посібник покаже вам

Як встановити dotCMS на Ubuntu 16.04

Як встановити dotCMS на Ubuntu 16.04

Використання іншої системи? DotCMS — це система керування вмістом корпоративного рівня з відкритим вихідним кодом, написана на Java. Він містить майже всі необхідні функції

Як встановити CMS Pagekit 1.0 на FreeBSD 11 FAMP VPS

Як встановити CMS Pagekit 1.0 на FreeBSD 11 FAMP VPS

Використання іншої системи? Pagekit 1.0 CMS – це красива, модульна, розширювана та легка, безкоштовна система керування вмістом (CMS) з відкритим вихідним кодом.

Як встановити BigTree CMS на Fedora 26 LAMP VPS

Як встановити BigTree CMS на Fedora 26 LAMP VPS

Використання іншої системи? BigTree CMS 4.2 — це швидка та легка, безкоштовна система управління вмістом (CMS) корпоративного рівня з відкритим вихідним кодом з широким

Встановлення CMS Pagekit на Ubuntu 16.04 LTS

Встановлення CMS Pagekit на Ubuntu 16.04 LTS

Використання іншої системи? Pagekit — це CMS з відкритим кодом, написана на PHP. Вихідний код Pagekit розміщено на GitHub. Цей посібник покаже вам, як встановити

Як встановити PyroCMS на Ubuntu 16.04

Як встановити PyroCMS на Ubuntu 16.04

Використання іншої системи? PyroCMS — це CMS з відкритим кодом, написана на PHP. Вихідний код PyroCMS розміщено на GitHub. У цьому посібнику добре пройдіться по всьому

Як встановити Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Як встановити Subrion 4.1 CMS на FreeBSD 11 FAMP VPS

Використання іншої системи? Subrion 4.1 CMS — це потужна та гнучка система керування вмістом із відкритим кодом (CMS), яка забезпечує інтуїтивно зрозумілий та зрозумілий вміст

Як встановити Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Як встановити Backdrop CMS 1.8.0 на Debian 9 LAMP VPS

Використання іншої системи? Backdrop CMS 1.8.0 — це проста та гнучка, зручна для мобільних пристроїв, безкоштовна і відкрита система керування вмістом (CMS), яка дозволяє нам

Як встановити Roadiz CMS на Debian 9

Як встановити Roadiz CMS на Debian 9

Використання іншої системи? Вступ Roadiz — це сучасна CMS, розроблена для роботи з багатьма типами послуг. На основі компонентів Symfony і Doctrine ORM, тобто

Встановлення Microweber на Debian 9

Встановлення Microweber на Debian 9

Використання іншої системи? Microweber — це CMS та інтернет-магазин із відкритим вихідним кодом. Вихідний код Microweber розміщено на GitHub. Цей посібник покаже вам

Як встановити Grav CMS на Fedora 28

Як встановити Grav CMS на Fedora 28

Використання іншої системи? Grav — це CMS з відкритим вихідним кодом, написана на PHP. Вихідний код Grav відкрито розміщено на GitHub. Цей посібник покаже вам, як т

Як встановити Grav CMS на Debian 9

Як встановити Grav CMS на Debian 9

Використання іншої системи? Grav — це CMS з відкритим вихідним кодом, написана на PHP. Вихідний код Grav відкрито розміщено на GitHub. Цей посібник покаже вам, як т

Як встановити Automad CMS на CentOS 7

Як встановити Automad CMS на CentOS 7

Використання іншої системи? Automad — це файлова система управління вмістом (CMS) з відкритим вихідним кодом і механізм шаблонів, написаний на PHP. Вихідний код Automad i

Як встановити Raneto на Ubuntu 17.10

Як встановити Raneto на Ubuntu 17.10

Raneto — це безкоштовна база знань з відкритим вихідним кодом, побудована на Node.js, яку легко налаштувати та використовувати, а також легко адмініструвати. Категорії та сторінки ар

Як встановити Thelia 2.3 на Ubuntu 16.04

Як встановити Thelia 2.3 на Ubuntu 16.04

Використання іншої системи? Thelia — інструмент із відкритим кодом для створення веб-сайтів електронного бізнесу та керування онлайн-контентом, написаним на PHP. Вихідний код Thelia i

Як встановити жовтень 1.0 CMS на Debian 9 LAMP VPS

Як встановити жовтень 1.0 CMS на Debian 9 LAMP VPS

Використання іншої системи? Жовтень 1.0 CMS — це проста і надійна, безкоштовна система керування вмістом (CMS) з відкритим кодом, побудована на базі Laravel.

Як встановити ImpressPages CMS 5.0 на Ubuntu 16.04 LAMP VPS

Як встановити ImpressPages CMS 5.0 на Ubuntu 16.04 LAMP VPS

Використання іншої системи? ImpressPages CMS 5.0 — це проста й ефективна, безкоштовна та з відкритим вихідним кодом, зручна для користувачів, заснована на MVC, система керування вмістом (CMS)

Як встановити CMS Made Simple 2.2 на Debian 9 LAMP VPS

Як встановити CMS Made Simple 2.2 на Debian 9 LAMP VPS

Використання іншої системи? CMS Made Simple 2.2 – це гнучка та розширювана, безкоштовна система керування вмістом (CMS) з відкритим вихідним кодом, інтелектуально розроблена для

Повстання машин: застосування ШІ в реальному світі

Повстання машин: застосування ШІ в реальному світі

Штучний інтелект не в майбутньому, він тут прямо в сьогоденні У цьому блозі Прочитайте, як програми штучного інтелекту вплинули на різні сектори.

DDOS-атаки: короткий огляд

DDOS-атаки: короткий огляд

Ви також стали жертвою DDOS-атак і спантеличені методами запобігання? Прочитайте цю статтю, щоб вирішити свої запитання.

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Ви коли-небудь замислювалися, як хакери заробляють гроші?

Можливо, ви чули, що хакери заробляють багато грошей, але чи замислювалися ви коли-небудь, як вони заробляють такі гроші? давайте обговоримо.

Революційні винаходи від Google, які полегшать ваше життя.

Революційні винаходи від Google, які полегшать ваше життя.

Ви хочете побачити революційні винаходи Google і як ці винаходи змінили життя кожної людини сьогодні? Тоді читайте в блозі, щоб побачити винаходи Google.

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Friday Essential: Що сталося з автомобілями, керованими штучним інтелектом?

Концепція самокерованих автомобілів, щоб вирушати в дороги за допомогою штучного інтелекту, є мрією, яку ми давно мріємо. Але, незважаючи на кілька обіцянок, їх ніде не видно. Прочитайте цей блог, щоб дізнатися більше…

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Технологічна сингулярність: віддалене майбутнє людської цивілізації?

Оскільки наука розвивається швидкими темпами, бере на себе багато наших зусиль, ризики піддати себе незрозумілій Сингулярності також зростає. Читайте, що може означати для нас сингулярність.

Еволюція зберігання даних – інфографіка

Еволюція зберігання даних – інфографіка

Методи зберігання даних можуть розвиватися з моменту народження Даних. Цей блог висвітлює еволюцію зберігання даних на основі інфографіки.

Функціональні можливості шарів еталонної архітектури великих даних

Функціональні можливості шарів еталонної архітектури великих даних

Прочитайте блог, щоб дізнатися про різні шари архітектури великих даних та їх функціональні можливості найпростішим способом.

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

6 дивовижних переваг використання пристроїв розумного дому в нашому житті

У цьому цифровому світі пристрої розумного дому стали важливою частиною життя. Ось кілька дивовижних переваг пристроїв розумного дому щодо того, як вони роблять наше життя гідним життя та спрощують його.

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Оновлення доповнення macOS Catalina 10.15.4 спричиняє більше проблем, ніж вирішує

Нещодавно Apple випустила додаткове оновлення macOS Catalina 10.15.4, щоб виправити проблеми, але схоже, що оновлення викликає більше проблем, що призводять до блокування комп’ютерів Mac. Прочитайте цю статтю, щоб дізнатися більше