Как установить WordPress на Ubuntu Server 18.04

WordPress, без сомнения, самая широко используемая блог-платформа на планете. Но этот инструмент можно использовать не только для ведения блогов. При правильном добавлении расширений вы можете превратить WordPress в сайт электронной коммерции, мультимедийный сайт и многое другое. Если у вас есть собственный сервер, вы можете разместить установку WordPress, не обращаясь к третьей стороне. И это именно то, что мы собираемся сделать здесь. Из этого руководства вы узнаете, как установить необходимые компоненты, а также платформу WordPress на Ubuntu Server 18.04. Это будет предполагать только одно: у вас Ubuntu Server запущен и работает.

зависимости

Первое, что нужно сделать, — это запустить наш сервер LAMP (Linux Apache MySQL PHP). Поскольку Ubuntu уже существует, все, что нужно сделать, это установить вторичные компоненты. Поскольку мы используем Ubuntu, это можно сделать с помощью одной команды. Однако, прежде чем мы это сделаем, мы хотим убедиться, что наш сервер обновлен. Откройте окно терминала и введите следующие команды:

sudo apt-get update
sudo apt-get upgrade

Если ядро ​​будет обновлено в процессе, потребуется перезагрузка. Если это так, сервер необходимо будет перезапустить (чтобы изменения вступили в силу). Это означает, что вы должны запускать обновление / обновление в то время, когда перезагрузка жизнеспособна.

После обновления / обновления пришло время установить веб-серверы / серверы баз данных и PHP. Это можно сделать с помощью одной команды:

sudo apt-get установить ламповый сервер ^

Во время установки вам будет предложено создать / проверить пароль для пользователя-администратора MySQL. Когда процесс завершится, вы можете указать браузеру http: // SERVER_IP (где SERVER_IP — IP-адрес вашего сервера Ubuntu), чтобы увидеть экран приветствия Apache.

Далее мы должны установить несколько необходимых расширений PHP. Это можно сделать с помощью команды:

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-мыло php-intl php-zip

Включение SSL

Прежде чем мы перейдем к настройке Apache и установке WordPress, мы собираемся подготовить наш сервер к использованию SSL (Secure Sockets Layer), которые представляют собой различные веб-протоколы, которые работают вместе для упаковки обычного HTTP-трафика в защищенную зашифрованную оболочку. , Таким образом, HTTP становится HTTPS. Поскольку я только настраиваю тестовый сервер, я буду создавать самозаверяющий сертификат SSL для IP-адреса. Для этого выполните следующие действия.

Создайте сертификат SSL с помощью следующей команды:

sudo openssl req -x509 -nodes -days 365 -newkey rsa: 2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt

Когда вы выполните эту команду, вам необходимо будет ответить на следующие вопросы:

Название страны (двухбуквенный код) [AU]:
Название штата или провинции (полное название) [Some-State]:
Название населенного пункта (например, город) []:
Название организации (например, компания) []
Название организационной единицы (например, раздел) []:
Общее имя (например, полное доменное имя сервера или ваше имя) []:
Адрес электронной почты []:

Для самозаверяющего сертификата важно, чтобы вы вводили IP-адрес своего сервера для записи Common Name.

Далее мы настраиваем Apache для использования SSL. Создайте новый файл с помощью команды:

sudo nano /etc/apache2/conf-available/ssl-params.conf

В этот новый файл вставьте следующее:

SSLCipherSuite EECDH + AESGCM: EDH + AESGCM: AES256 + EECDH: AES256 + EDH
SSLProtocol Все -SSLv2 -SSLv3 -TLSv1 -TLSv1.1
SSLHonorCipherOrder On
# Отключить предварительную загрузку HSTS на данный момент. Вы можете использовать закомментированную строку заголовка, которая включает
# директива preload, если вы понимаете последствия.
# Заголовок всегда устанавливает Strict-Transport-Security "max-age = 63072000; includeSubDomains; preload"
Заголовок всегда устанавливает X-Frame-Options DENY
Заголовок всегда устанавливает X-Content-Type-Options nosniff
# Требуется Apache> = 2.4
SSLC-сжатие выключено
SSLUseStapling on
SSLStaplingCache "shmcb: logs / stapling-cache (150000)"
# Требуется Apache> = 2.4.11
SSLSessionTickets выключен

Сохраните и закройте этот файл.

Теперь мы собираемся создать новый файл default-ssl.conf. Прежде чем сделать это, сделайте резервную копию оригинала с помощью команды:

sudo cp /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-available/default-ssl.conf.bak

Создайте новый файл с помощью команды:

sudo nano /etc/apache2/sites-available/default-ssl.conf

В этот новый файл вставьте следующее:



ServerAdmin YOUR_EMAIL
Имя_сервера SERVER_IP
DocumentRoot / var / www / html
ErrorLog $ {APACHE_LOG_DIR} /error.log
CustomLog $ {APACHE_LOG_DIR} /access.log вместе
SSLEngine на
SSLCertificateFile /etc/ssl/certs/apache-selfsigned.crt
SSLCertificateKeyFile /etc/ssl/private/apache-selfsigned.key

SSLOptions + StdEnvVars


SSLOptions + StdEnvVars


Где SERVER_IP — это IP-адрес вашего сервера, а YOUR_EMAIL — ваш адрес электронной почты.

Сохраните и закройте этот файл.

Теперь мы собираемся настроить перенаправление, чтобы весь HTTP-трафик автоматически перенаправлялся на HTTPS. Для этого создайте новый файл с помощью команды:

sudo nano /etc/apache2/sites-available/000-default.conf

В этом файле добавьте следующую строку под записью DocumentRoot:

Редирект «/» «https: // SERVER_IP /»

Где SERVER_IP — это IP-адрес вашего сервера.

Сохраните и закройте этот файл.

Далее нам нужно включить несколько модулей и хостов с помощью команд:

sudo a2enmod ssl
Заголовки sudo a2enmod
sudo a2ensite default-ssl
sudo a2enconf ssl-params

Наконец, перезапустите Apache с помощью команды:

sudo systemctl перезапустить apache2

Теперь вы должны иметь возможность указать вашему браузеру https: // SERVER_IP (где SERVER_IP — это IP-адрес вашего сервера) и по-прежнему видеть экран приветствия Apache.

База данных

WordPress зависит от базы данных для функционирования. Чтобы создать это, вы должны сначала войти в приглашение MySQL с помощью команды:

mysql -u root -p

Вам будет предложено ввести пароль администратора MySQL, который вы создали во время установки сервера LAMP. В командной строке MySQL создайте базу данных с помощью команды:

СОЗДАТЬ БАЗУ ДАННЫХ WordPress НАЗНАЧЕНИЕ ПО УМОЛЧАНИЮ ПО УМОЛЧАНИЮ utf8 COLLATE utf8_unicode_ci;

Затем создайте нового пользователя и предоставьте этому пользователю разрешение на доступ к базе данных с помощью команды:

Предоставить все на wordpress. * «Wordpressuser» @ «localhost», идентифицированный «паролем»;

Где ПАРОЛЬ — это уникальный надежный пароль.

Сбросьте привилегии базы данных и выйдите с помощью команд:

ПРИВИЛЕГИИ ПРОМЫВКИ;
ВЫХОД

Разрешить .htaccess и Включить модуль перезаписи

Нам нужно включить .htaccess для WordPress. Для этого создайте новый файл конфигурации Apache с помощью команды:

sudo nano /etc/apache2/sites-available/wordpress.conf

В этот файл вставьте следующее:


AllowOverride All

Включите модуль перезаписи с помощью команды:

sudo a2enmod переписать

Перезапустите Apache с помощью команды:

sudo systemctl перезапустить apache2

Скачать, распаковать и подготовить WordPress

Мы собираемся скачать официальный файл WordPress с помощью следующих команд:

CD / TMP
curl -O https://wordpress.org/latest.tar.gz

Распакуйте WordPress с помощью команды:

tar xvzf latest.tar.gz

Создайте фиктивный файл .htaccess с помощью команды:

коснитесь /tmp/wordpress/.htaccess

Скопируйте пример файла конфигурации в нужный файл конфигурации с помощью команды:

cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php

Создайте каталог обновления (чтобы избежать проблем с разрешениями) с помощью команды:

mkdir / tmp / wordpress / wp-content / upgrade

Скопируйте содержимое каталога wordpress в корневой каталог документа с помощью команды:

sudo cp -a / tmp / wordpress /. / Var / WWW / HTML / WordPress

Наконец, настройте владельца и права доступа к недавно перемещенному каталогу WordPress с помощью команд:

sudo chown -R www-data: www-data / var / www / wordpress
sudo find / var / www / wordpress / -type d -exec chmod 750 {} \;
sudo find / var / www / wordpress / -type f -exec chmod 640 {} \;

Настройка WordPress

Этот раздел немного усложняется. Файл wp-config.php необходимо отредактировать, но перед тем, как это сделать, необходимо загрузить уникальные секретные ключи, которые будут добавлены в файл конфигурации. Чтобы получить эти ключи, введите команду:

Это выведет несколько длинных строк, каждая из которых связана с определенным параметром конфигурации. Каждая строка связана со следующими значениями в файле конфигурации:

AUTH_KEY
SECURE_AUTH_KEY
LOGGED_IN_KEY
NONCE_KEY
AUTH_SALT
SECURE_AUTH_SALT
LOGGED_IN_SALT
NONCE_SALT

Скопируйте эти значения в другой файл. Затем откройте файл конфигурации WordPress с помощью команды:

sudo nano /var/www/wordpress/wp-config.php

Найдите значения выше и вставьте секретный ключ для каждого. После этого прокрутите вверх и измените значения для:

DB_NAME
DB_USER
DB_PASSWORD

Вышеуказанные значения были созданы ранее (с MySQL).

Сохраните и закройте этот файл.

Завершить установку

Веб-установщик WordPress.

Теперь вы можете указать вашему браузеру https: // SERVER_IP / wordpress и пройти через веб-установщик, чтобы завершить установку. После нескольких нажатий и небольшого набора текста ваш экземпляр WordPress будет запущен.

Ссылка на основную публикацию