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

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

Передумови

Крок 1. Налаштуйте оновлений стек LAMP

Під час розгортання сайту вмісту на основі Neos 3.2.0 необхідно налаштувати оновлений стек LAMP, перш ніж ви зможете запустити сайт. Наприклад, сьогодні кваліфікований стек LAMP для Neos 3.2.0 буде складатися з:

  • CentOS 7 x64, оновлено до останнього стабільного стану,
  • Apache 2.4,
  • MariaDB 10.2, використовуючи параметри utf8_unicode_ciзіставлення за замовчуванням, і
  • PHP 7.1 або принаймні PHP 7.0.

Існує багато документів Vultr, які допоможуть вам налаштувати стек LAMP, але нижче наведено приклад історії командного рядка для вашої інформації. Майте на увазі, що також будуть включені спеціальні зміни налаштувань для Neos.

# Install and configure Apache 2.4.x
sudo yum install httpd -y
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
sudo systemctl start httpd.service
sudo systemctl enable httpd.service

# Install MariaDB 10.2.x
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

# Secure MariaDB 10.2.x
sudo /usr/bin/mysql_secure_installation
# When prompted, answer questions as below:
# - Enter current password for root (enter for none): Just press the Enter button
# - Set root password? [Y/n]: Y
# - New password: your-MariaDB-root-password
# - Re-enter new password: your-MariaDB-root-password
# - 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

# Set the default collation of MariaDB as utf8_unicode_ci
cat <<EOF>> /tmp/collation.conf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server=utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server=utf8
EOF
sudo cp /etc/my.cnf /etc/my.cnf.bak
sudo sed -i '/\[client-server\]/r /tmp/collation.conf' /etc/my.cnf
sudo systemctl restart mariadb.service

# Create a MariaDB database for Neos
mysql -u root -p
# For security purposes, be sure to replace "neos", "neosuser", and "yourpassword" with your own ones. 
CREATE DATABASE neos;
CREATE USER 'neosuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON neos.* TO 'neosuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

# Install required PHP 7.1.x packages and configure PHP for Neos
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install -y php71w php71w-mysqlnd php71w-common php71w-cli php71w-xml php71w-mbstring php71w-pecl-imagick php71w-mcrypt php71w-opcache php71w-imap php71w-process php71w-intl
sudo cp /etc/php.ini /etc/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php.ini
sudo sed -i "s/memory_limit = 128M/memory_limit = 250M/" /etc/php.ini
sudo sed -i '$a\xdebug.max_nesting_level = 500' /etc/php.ini

Крок 2: Завантажте та встановіть Composer

Neos потрібен менеджер залежностей Composer PHP. Ви можете використовувати наступні команди, щоб встановити Composer 1.5.2 на свій комп’ютер.

Примітка. У майбутньому ви завжди зможете отримати останню стабільну версію Composer з офіційної сторінки завантаження .

cd
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

Крок 3: Установіть Neos за допомогою Composer

За допомогою Composer ви можете встановити Neos і всі необхідні залежності у визначене місце.

cd
mkdir neos
cd neos
composer create-project --no-dev neos/neos-base-distribution .

Для цілей керування перемістіть усі файли Neos до /optкаталогу, а потім створіть символічне посилання з кореневого веб-каталогу /var/www/htmlдо /opt/neosкаталогу, щоб зробити всі файли Neos доступними для Apache.

sudo mv ~/neos /opt
sudo chown -R apache:apache /opt/neos
sudo ln -s /opt/neos /var/www/html/neos

Налаштуйте віртуальний хост Apache для сайту Neos, який буде вказано /var/www/html/neos/Webяк кореневий веб-каталог.

Примітка: під час розгортання на власному комп’ютері обов’язково замініть усі exampleнижченаведені значення своїми.

cat <<EOF | sudo tee /etc/httpd/conf.d/neos.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/neos/Web
ServerName example.com
ServerAlias neos.example.com
<Directory /var/www/html/neos/Web>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/example.com-error_log
CustomLog /var/log/httpd/example.com-access_log common
</VirtualHost>
EOF

Перезапустіть Apache, щоб застосувати всі оновлення.

sudo systemctl restart httpd.service

Крок 4. Змініть правила брандмауера

Щоб дозволити відвідувачам отримати доступ до вашого сайту Neos, вам потрібно змінити правила брандмауера наступним чином.

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

Крок 5. Продовжте встановлення за допомогою веб-майстра встановлення

Наведіть свій улюблений веб-браузер на http://example.com/setup, і тоді ви потрапите в інтерфейс майстра веб-інсталяції Neos.

На Loginсторінці вам потрібно ввести пароль налаштування, а потім натиснути Loginкнопку, перш ніж ви зможете увійти в інтерфейс налаштування. Пароль зберігається у /var/www/html/neos/Data/SetupPassword.txtфайлі, ви можете ввести наступну команду у вікні терміналу, щоб отримати його.

cat /var/www/html/neos/Data/SetupPassword.txt

З міркувань безпеки цей файл буде видалено після успішного входу в систему. Не забудьте записати пароль для подальшого використання.

На Neos requirements check - Image Manipulationсторінці переконайтеся, що розширення imagickабо gmagickPHP встановлено та вибрано, а потім натисніть Next >кнопку, щоб перейти далі.

На Configure databaseсторінці введіть або виберіть деталі бази даних, як показано нижче.

  • Драйвер БД: MySQL/MariaDB via PDO
  • Ім'я користувача БД: neosuser
  • Пароль БД: yourpassword
  • Хост БД: 127.0.0.1
  • Ім'я БД: neos

Переконайтеся, що база даних neosвикористовує utf8набір символів, а потім натисніть Next >кнопку, щоб перейти далі.

На Create administrator accountсторінці введіть адміністратора сайту first name, last name, username, і password(двічі), а потім натисніть Next >кнопку, щоб перейти далі.

На Create a new siteсторінці, як новачок, ви можете вибрати Neos.Demoпакет сайту, а потім натиснути Next >кнопку, щоб завершити налаштування.

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

Тепер ви можете відвідати веб-сторінку сайту Neos або керувати сайтом на внутрішній сторінці сайту Neos. Для довідки нижче наведено корисні посилання.

  • Внутрішня сторінка сайту: http://example.com
  • Бекенд-сторінка сайту: http://example.com/neos
  • Сторінка налаштування сайту: http://example.com/setup

Крок 6: Інструкції після встановлення

Під час розгортання вашого сайту Neos у виробничому середовищі вам також потрібно змінити контекст програми Flow з Development(значення за замовчуванням) на Production, вставивши рядок SetEnv FLOW_CONTEXT Productionу конфігурацію віртуального хоста Apache, як показано нижче.

cat <<EOF | sudo tee /etc/httpd/conf.d/neos.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/neos/Web
SetEnv FLOW_CONTEXT Production
ServerName example.com
ServerAlias neos.example.com
<Directory /var/www/html/neos/Web>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/example.com-error_log
CustomLog /var/log/httpd/example.com-access_log common
</VirtualHost>
EOF

Перезапустіть Apache, щоб застосувати зміни.

sudo systemctl restart httpd.service

Якщо ви створюєте сайт за допомогою загальнодоступного Neos.demoпакета сайту, обов’язково видаліть Create accountкнопку на Try meсторінці, щоб запобігти несанкціонованому доступу.

Крок 7 (необов'язково): увімкніть HTTPS, розгорнувши сертифікат Let's Encrypt

Щоб підвищити безпеку вашого сайту Neos, ви можете ввімкнути HTTPSйого, розгорнувши сертифікат Let's Encrypt.

Спочатку скористайтеся viтекстовим редактором, щоб налаштувати FQDN (повне доменне ім’я) на вашому сервері.

sudo vi /etc/hosts

Вставте наступний рядок перед будь-якими наявними рядками.

203.0.113.1 neos.example.com neos

Збережіть і вийдіть.

:wq!

Використовуйте hostname -fкоманду, щоб підтвердити результат, який буде виглядати так.

neos.example.com

Встановіть утиліту Certbot, яка може автоматично розгорнути сертифікат Let's Encrypt та ввімкнути HTTPS.

sudo yum install -y yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot-apache

Далі скористайтеся утилітою Certbot, щоб розгорнути сертифікат Let's Encrypt для веб-сервера Apache, запущеного на вашому екземплярі сервера.

sudo cp /etc/httpd/conf.d/neos.conf /etc/httpd/conf.d/neos.conf.bak
sudo certbot --apache

Під час процесу відповідайте на запитання, як показано нижче.

Enter email address (used for urgent renewal and security notices): `[email protected]`
Agree Letsencrypt terms of service (A)gree/(Cancel): `A`
Would you be willing to share your email address (Y)es/(N)o: `Y`
Which names would you like to activate HTTPS for? 1: example.com 2:neos.example.com: `1,2`
Whether or not to redirect HTTP traffic to HTTPS, removing HTTP access? 1: No redirect/2: Redirect `2`

Усі HTTPпідключення тепер будуть перенаправлені на HTTPS.

Створіть завдання cron, як показано нижче, щоб спробувати оновити сертифікат Let's Encrypt на вашому комп’ютері двічі на день.

sudo crontab -e

Натисніть " I", щоб увійти в режим вставки, а потім введіть наступний рядок.

0 1,13 * * * /usr/bin/certbot renew

Збережіть і вийдіть.

:wq!

На цьому підручник завершується. Дякую, що прочитали.


Створення блогу Jekyll в Ubuntu 16.04

Створення блогу Jekyll в Ubuntu 16.04

Використання іншої системи? Jekyll — чудова альтернатива WordPress для ведення блогів або обміну вмістом. Для цього не потрібні ніякі бази даних, і це дуже легко i

Як встановити MODX Revolution на Ubuntu 16.04 LAMP VPS

Як встановити MODX Revolution на Ubuntu 16.04 LAMP VPS

Використання іншої системи? MODX Revolution — це швидка, гнучка, масштабована, безкоштовна система керування вмістом (CMS) корпоративного рівня з відкритим кодом.

Створення блогу Jekyll на CentOS 7

Створення блогу Jekyll на CentOS 7

Використання іншої системи? Jekyll — хороша альтернатива WordPress. Він не вимагає жодних баз даних і працює з мовою, знайомою багатьом

Як встановити MODX Revolution на VPS CentOS 7 LAMP

Як встановити MODX Revolution на VPS CentOS 7 LAMP

Використання іншої системи? MODX Revolution — це швидка, гнучка, масштабована, безкоштовна система керування вмістом (CMS) корпоративного рівня з відкритим кодом.

Встановлення Fork CMS на CentOS 7

Встановлення Fork CMS на CentOS 7

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

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

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

Neos – це інноваційна система керування вмістом із відкритим кодом, яка чудово підходить для створення та редагування онлайн-контенту. Маючи на увазі авторів і редакторів, Neo

Як розгорнути Ghost v0.11 LTS на CentOS 7.3

Як розгорнути Ghost v0.11 LTS на CentOS 7.3

Використання іншої системи? Ghost — це платформа для ведення блогів з відкритим кодом, яка набирає популярності серед розробників і звичайних користувачів з 201 року.

Як розгорнути Ghost v0.11 LTS на Fedora 25

Як розгорнути Ghost v0.11 LTS на Fedora 25

Використання іншої системи? Ghost — це платформа для ведення блогів з відкритим кодом, яка набирає популярності серед розробників і звичайних користувачів з 201 року.

Як розгорнути кілька сайтів Wordpress за допомогою Virtualmin і Ansible в Ubuntu 16.04

Як розгорнути кілька сайтів Wordpress за допомогою Virtualmin і Ansible в Ubuntu 16.04

Поширеним використанням віртуального сервера Vultr є розміщення веб-сайтів Wordpress. У цьому посібнику показано, як автоматизувати налаштування віртуального сервера з нуля

Налаштування платформи професійної публікації Ghost на OpenBSD 6

Налаштування платформи професійної публікації Ghost на OpenBSD 6

Ghost — найновіша і найкраща вискочка, яка конкурує з WordPress. Розробка теми швидка та проста в освоєнні, тому що розробники Ghost вирішили використовувати обидва

Встановіть та налаштуйте блог Ghost v1.0.0 в Ubuntu 16.04

Встановіть та налаштуйте блог Ghost v1.0.0 в Ubuntu 16.04

Ghost — це сучасна видавнича платформа з відкритим вихідним кодом, побудована на Node.js з клієнтом адміністратора Ember.js, API JSON та API тем, що працює на основі Handlebars.js. Ghos

Як встановити MODX Revolution на Fedora 26 LAMP VPS

Як встановити MODX Revolution на Fedora 26 LAMP VPS

Використання іншої системи? MODX Revolution — це швидка, гнучка, масштабована, безкоштовна система керування вмістом (CMS) корпоративного рівня з відкритим кодом.

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

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

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

Як розгорнути Ghost на Debian 8.7

Як розгорнути Ghost на Debian 8.7

Використання іншої системи? Ghost – це платформа для ведення блогів з відкритим кодом, яка набирає популярності серед розробників і звичайних користувачів з моменту її випуску в 2013 році. я

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

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

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

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

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

Typesetter — це CMS з відкритим вихідним кодом, написана на PHP, зосереджена на простоті використання з редагуванням True WYSIWYG і зберіганням плоских файлів. У цій статті ми будемо встановлювати

Налаштування WordPress за допомогою WooCommerce на CentOS 6

Налаштування WordPress за допомогою WooCommerce на CentOS 6

Примірники Vultr – це чудовий спосіб вести свій блог WordPress, але більш помітним розширенням WordPress є WooCommerce, плагін електронної комерції, який розширює

Встановлення Fork CMS на Fedora 28

Встановлення Fork CMS на Fedora 28

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

Як встановити MODX Revolution на Debian 9 LAMP VPS

Як встановити MODX Revolution на Debian 9 LAMP VPS

Використання іншої системи? MODX Revolution — це швидка, гнучка, масштабована, безкоштовна система керування вмістом (CMS) корпоративного рівня з відкритим кодом.

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

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

Використання іншої системи? SilverStripe — це гнучка та розширювана безкоштовна система керування вмістом (CMS) корпоративного рівня з відкритим кодом, написана на PHP. я

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

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

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

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. Прочитайте цю статтю, щоб дізнатися більше