Установите WordPress на OpenBSD 6.2
 
                                Введение WordPress является доминирующей системой управления контентом в Интернете. Он поддерживает все, от блогов до сложных сайтов с динамическим контентом
Ghost - это платформа для ведения блогов с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с момента ее выпуска в 2013 году. Это делает акцент на контент и блоги. Самое привлекательное в Ghost - это простой, чистый и отзывчивый дизайн. Вы можете написать свои сообщения в блоге с мобильного телефона. Контент для Ghost написан с использованием языка Markdown. Призрак идеально подходит для отдельных людей или небольших групп писателей.
В этом руководстве мы собираемся настроить и развернуть безопасный блог Ghost v0.11.x LTS на VPS Ubuntu 16.04 LTS, используя Let's Encrypt , Certbot , Node.js , NPM , NGINX и MySQL .
Создайте новую учетную запись пользователя без полномочий root :
adduser johndoe --gecos "John Doe"
	Сделайте его суперпользователем, добавив его в sudoгруппу:
usermod -aG sudo johndoe
	Переключиться на нового пользователя:
su - johndoe
	Обновите программное обеспечение вашей операционной системы:
sudo apt update && sudo apt upgrade -y
	Установите часовой пояс:
sudo dpkg-reconfigure tzdata
	Установите необходимые инструменты:
sudo apt install -y build-essential zip unzip vim nano openssl wget curl git apt-transport-https
	Перезагрузите систему, если требуется:
sudo shutdown -r now
	ПРИМЕЧАНИЕ . Перед началом этого шага убедитесь, что вы установили записи DNS для своего домена.
Мы будем использовать Let's Encrypt  CA и клиент EFF Certbot для получения сертификата SSL / TLS для нашего блога Ghost. Не забудьте заменить все экземпляры на blog.domain.tldваше доменное имя.
Установите программу управления сертификатами Certbot (ранее - Let's Encrypt ), сделанную на Python:
sudo apt update
sudo apt install -y software-properties-common
sudo add-apt-repository -y ppa:certbot/certbot
sudo apt update
sudo apt install -y certbot
	Проверьте версию Certbot:
certbot --version
# certbot 0.14.2
	Получить серти��икат RSA , используя автономный метод аутентификации (плагин):
sudo certbot certonly --standalone --domains blog.domain.tld --rsa-key-size 2048 --must-staple --email [email protected] --no-eff-email --agree-tos
# IMPORTANT NOTES:
#  - Congratulations! Your certificate and chain have been saved at 
   /etc/letsencrypt/live/blog.domain.tld/fullchain.pem. 
#  Your cert will expire on YYYY-MM-DD. . . .
#  . . .
	После выполнения предыдущих шагов ваш сертификат и закрытый ключ будут в /etc/letsencrypt/live/blog.domain.tldкаталоге.
ПРИМЕЧАНИЕ . В настоящее время Ghost поддерживает только версии Node.js 4.5+ и 6.9+ .
Призрак построен на Node.js. Мы собираемся установить рекомендуемую версию для Ghost, которая была v6 Boron LTSна момент написания этой статьи.
Загрузите и установите Node.js v6 LTS:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt install -y nodejs
	Проверьте Node.js и версию NPM:
node -v && npm -v
# v6.11.1
# 3.10.10
	По умолчанию Ghost настроен на использование базы данных SQLite, которая не требует настройки.
В качестве альтернативы Ghost также можно использовать с базой данных MySQL, изменив конфигурацию базы данных. Сначала вы должны создать базу данных и пользователя, затем вы можете изменить существующую конфигурацию sqlite3.
Загрузите и установите MySQL:
sudo apt install -y mysql-server
	ПРИМЕЧАНИЕ . Во время установки вам будет предложено ввести пароль пользователя root «MySQL». Вы должны установить безопасный пароль для пользователя «root» MySQL.
Проверьте версию MySQL:
mysql --version
# mysql  Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using  EditLine wrapper
	Проверьте, запущен ли демон MySQL и работает ли он:
sudo systemctl status mysql.service
sudo systemctl is-enabled mysql.service
	Запустите mysql_secure_installationскрипт, чтобы немного защитить свою базу данных:
sudo mysql_secure_installation
	Войдите в MySQL как пользователь root:
mysql -u root -p
# Enter password:
	Создайте новую базу данных MySQL и пользователя:
create database dbname;
grant all on dbname.* to 'user' identified by 'password';
	Выход из MySQL:
exit
	Загрузите и установите последнюю основную версию NGINX из официального репозитория NGINX:
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt nginx-nr-agent
	Убедитесь, что он установлен, проверив версию NGINX:
sudo nginx -v
# nginx version: nginx/1.13.3
	Проверьте состояние, включите и запустите службу NGINX (демон):
sudo systemctl status nginx.service # inactive (dead)
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
	Создайте /etc/nginx/sslкаталог и сгенерируйте новую группу Диффи-Хеллмана ( DH ):
sudo mkdir -p /etc/nginx/ssl
sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
	Создайте каталог журналов для blog.domain.tldвиртуального хоста:
sudo mkdir -p /var/log/nginx/blog.domain.tld
	Настройте NGINX как обратный прокси-сервер HTTP ( S ):
sudo vim /etc/nginx/conf.d/ghost.conf
	Вставьте следующее в /etc/nginx/conf.d/ghost.conf:
# domain: blog.domain.tld
# public: /var/www/ghost
upstream ghost_app {
    server 127.0.0.1:2368;
    keepalive 32;
}
server {
    listen [::]:80 default_server;
    listen 80 default_server;
    listen [::]:443 ssl http2 default_server;
    listen 443 ssl http2 default_server;
    server_name blog.domain.tld;
    root /var/www/ghost;
    error_log /var/log/nginx/blog.domain.tld/error.log;
    access_log /var/log/nginx/blog.domain.tld/access.log;
    client_max_body_size 100M;
    ssl_certificate /etc/letsencrypt/live/blog.domain.tld/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/blog.domain.tld/privkey.pem;
    ssl_dhparam ssl/dhparams-2048.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
    ssl_prefer_server_ciphers on;
    ssl_buffer_size 4K;
    ssl_session_timeout 1d;
    ssl_session_cache shared:SSL:50M;
    ssl_session_tickets off;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_trusted_certificate /etc/letsencrypt/live/blog.domain.tld/chain.pem;
    resolver 8.8.8.8 8.8.4.4 valid=300s;
    location / {
        proxy_pass http://ghost_app;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_hide_header X-Powered-By;
        proxy_http_version 1.1;
        proxy_set_header Connection "";
    }
}
	Сохраните и проверьте конфигурацию NGINX на наличие синтаксических ошибок:
sudo nginx -t
	Перезагрузите конфигурацию NGINX:
sudo systemctl reload nginx.service
	ПРИМЕЧАНИЕ . Если вы хотите разместить несколько блогов Ghost на одном VPS, каждый экземпляр Ghost должен работать на отдельном порту.
Создать корневой каталог документов:
sudo mkdir -p /var/www/
	Создать нового ghostпользователя:
sudo adduser --shell /bin/bash --gecos 'Ghost application' --disabled-password ghost
	Скачать Ghost:
curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.10/Ghost-0.11.10.zip -o ghost.zip
	Разархивируйте Ghost в /var/www/ghostкаталог (рекомендуемое место установки):
sudo unzip -uo ghost.zip -d /var/www/ghost
rm ghost.zip
	Перейдите в новый ghostкаталог:
cd /var/www/ghost
	Изменить владельца /var/www/ghostкаталога:
sudo chown -R ghost:ghost .
	Переключиться на нового ghostпользователя:
sudo su - ghost
	Перейдите к корню документа /var/www/ghost:
cd /var/www/ghost
	Установите Ghost только с производственными зависимостями. Когда это завершится, Ghost будет установлен:
npm install --production
	Настройка Призрачный путем изменения url, mailи databaseсвойство productionобъекта внутри config.jsфайла:
cp config.example.js config.js
vim /var/www/ghost/config.js
var path = require('path'),
    config;
config = {
    // ### Production
    // When running Ghost in the wild, use the production environment.
    // Configure your URL and mail settings here
    production: {
        url: 'https://blog.domain.tld',
        mail: {
            transport: 'SMTP',
            options: {
                service: 'Mailgun',
                auth: {
                    user: '',
                    pass: ''
                }
            }
        },
        database: {
            client: 'mysql',
            connection: {
                host: '127.0.0.1',
                user: 'your_database_user',
                password: 'your_database_password',
                database: 'your_database_name',
                charset: 'utf8'
            },
            debug: false
        },
        // . . .
        // . . .
	ПРИМЕЧАНИЕ . Необходимо также настроить
Запустите Ghost в производственной среде:
npm start --production
	Призрак теперь будет работать. Интерфейс блога и интерфейс администратора защищены HTTPS, также работает HTTP / 2. Вы можете открыть свой браузер и посетить сайт по адресу https://blog.domain.tld. Не забудьте заменить blog.domain.tldна ваше доменное имя.
Завершите процесс Ghost, нажав CTRL+, Cи выйдите из пользователя-призрака обратно пользователю root:
exit
	Если вы закроете сеанс терминала с вашим VPS, ваш блог также будет закрыт. Это не хорошо. Чтобы избежать этого, мы будем использовать systemd. Это будет держать наш блог вверх 24/7.
Создать ghost.serviceсистемный файл модуля. Запустите sudo vim /etc/systemd/system/ghost.serviceи скопируйте / вставьте содержимое ниже:
[Unit]
Description=Ghost - the professional publishing platform
Documentation=https://docs.ghost.org/v0.11.9
After=network.target
[Service]
Type=simple
# Edit WorkingDirectory, User and Group as needed
WorkingDirectory=/var/www/ghost
User=ghost
Group=ghost
ExecStart=/usr/bin/npm start --production
ExecStop=/usr/bin/npm stop --production
Restart=always
SyslogIdentifier=Ghost
[Install]
WantedBy=multi-user.target
	Включить и запустить ghost.service:
sudo systemctl enable ghost.service && sudo systemctl start ghost.service
	Проверьте ghost.serviceстатус:
sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
	Найдите https://blog.domain.tld/ghost/и создайте пользователя-администратора Ghost. Сделайте это как можно скорее!
Вот и все. Теперь у нас есть полностью функциональный блог Ghost. Ваш сервер доставляет контент через HTTP / 2, когда поддерживается клиентом. Если вы хотите изменить тему Ghost по умолчанию, называемую Casper, на собственную, вы можете просто скачать и разархивировать тему в /var/www/ghost/content/themesпапку и выбрать ее через интерфейс администратора Ghost, расположенный по адресу https://blog.domain.tld/ghost.
Введение WordPress является доминирующей системой управления контентом в Интернете. Он поддерживает все, от блогов до сложных сайтов с динамическим контентом
Используете другую систему? MODX Revolution - это быстрая, гибкая, масштабируемая система управления контентом (CMS) корпоративного уровня с открытым исходным кодом, написанная на PHP. Это я
Используете другую систему? MODX Revolution - это быстрая, гибкая, масштабируемая, бесплатная и с открытым исходным кодом корпоративная система управления контентом (CMS), написанная i
Используете другую систему? Ghost - это платформа для блогов с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с момента ее выпуска в 2013 году. я
Используете другую систему? Dotclear - очень простой движок для блогов. Это с открытым исходным кодом и прост в использовании. Этот учебник будет проходить установку на
Используете другую систему? Fork - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Forks размещен на GitHub. Это руководство покажет вам, как установить Fork CM
Typesetter - это CMS с открытым исходным кодом, написанная на PHP, ориентированная на простоту использования с редактированием True WYSIWYG и хранением плоских файлов. В этой статье мы будем устанавливать
Ghost - новейшая и самая лучшая выскочка для конкурента WordPress. Разработка тем быстро и легко изучается, потому что разработчики Ghost решили использовать оба
Используете другую систему? Ghost - это блог-платформа с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с 201 года.
Используете другую систему? MODX Revolution - это быстрая, гибкая, масштабируемая, бесплатная и с открытым исходным кодом корпоративная система управления контентом (CMS), написанная i
Используете другую систему? Fork - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Forks размещен на GitHub. Это руководство покажет вам, как установить Fork CM
Используете другую систему? Ghost - это платформа для блогов с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с момента ее выпуска в 2013 году. я
Используете другую систему? Jekyll - хорошая альтернатива WordPress. Он не требует каких-либо баз данных и работает с языком, знакомым многим
Используете другую систему? Ghost - это блог-платформа с открытым исходным кодом, которая завоевывает популярность среди разработчиков и обычных пользователей с 201 года.
Введение Чем ближе вы устанавливаете вашу OpenBSD к установке по умолчанию и без того, чтобы было добавлено столько пакетов, тем безопаснее она будет. Пока более комм
Используете другую систему? MODX Revolution - это быстрая, гибкая, масштабируемая, бесплатная и с открытым исходным кодом корпоративная система управления контентом (CMS), написанная i
Используете другую систему? Fork - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Forks размещен на GitHub. Это руководство покажет вам, как установить Fork CM
Используете другую систему? Dotclear - это очень простой движок для блогов, который построен на основе PHP. В этом уроке мы установим Dotclear на Ubunt
Обычно виртуальный сервер Vultr используется для размещения веб-сайтов Wordpress. В этом руководстве показано, как автоматизировать настройку виртуального сервера с нуля.
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше
 
                                 
                                 
                                 
                                 
                                 
                                