Site icon 8HOST.COM

Установка WordPress на Ubuntu 14.04

Сегодня WordPress является самой популярной системой управления контентом (CMS) и блог-платформой. Благодаря огромному количеству плагинов и шаблонов эта CMS отличается гибкостью настройки и позволяет настроить сайт согласно требованиям разработчика. WordPress может обслуживать самые различные сайты, от простого блога до полноценного e-commerce сайта.

Данное руководство поможет установить WordPress и настроить Apache для поддержки этой CMS на сервере Ubuntu 14.04.

Требования

Для выполнения инструкций понадобится:

У нас на 8HOST вы можете купить готовый VPS с предустановленным WordPress и безлимитным трафиком в Нидерландах всего от 4.20 евро в месяц!
На борту Debian9, LAMP, Webmin – все что нужно для быстрого развёртывания и простого управления сервером.

1: Создание базы данных MySQL для WordPress

Сначала нужно подготовить MySQL. Создайте отдельную БД и пользователя для хранения данных WordPress.

Войдите в MySQL как пользователь root:

mysql -u root -p

Программа запросит root-пароль. После этого откроется командная строка MySQL.

Чтобы создать БД для WordPress, выполните следующую команду (в данном руководстве эта БД зовётся wordpress для простоты; выберите более описательное имя и укажите его в команде):

CREATE DATABASE wordpress;

Примечание: Все команды MySQL должны заканчиваться точкой с запятой.

После этого нужно создать пользователя для управления этой БД. В руководстве пользователь условно называется wordpressuser и использует пароль password. Эти условные данные крайне небезопасны, потому в реальной установке следует выбрать более надёжные и уникальные данные и указать их в следующей команде:

CREATE USER wordpressuser@localhost IDENTIFIED BY ‘password’;

Итак, теперь БД и пользователь готовы. Передайте пользователю права на БД:

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost;

Теперь у пользователя есть доступ к базе данных. Обновите привилегии MySQL, чтобы изменения вступили в силу.

FLUSH PRIVILEGES;

Закройте командную строку MySQL:

exit

2: Загрузка WordPress

После этого нужно загрузить WordPress с сайта проекта.

Примечание: Команда WordPress всегда размещает актуальные версии системы по одной и той же ссылке.

Чтобы скачать пакет WordPress в домашний каталог, введите:

cd ~

wget http://wordpress.org/latest.tar.gz

В домашнем каталоге появится архив WordPress. Извлечь содержимое архива можно при помощи команды:

tar xzvf latest.tar.gz

В домашнем каталоге появится каталог wordpress.

Теперь нужно установить несколько дополнительных пакетов из репозитория Ubuntu, предварительно обновив список пакетов системы:

sudo apt-get update

sudo apt-get install php5-gd libssh2-php

Эти библиотеки отвечают за обработку изображений, поддержку плагинов и обновление сайта через SSH.

3: Настройка WordPress

В дальнейшем для настройки в основном будет использоваться интерфейс, но сначала нужно изменить некоторые параметры при помощи командной строки.

Откройте каталог WordPress:

cd ~/wordpress

По умолчанию WordPress предоставляет образец конфигурационного файла, который содержит основные параметры. Скопируйте его в новый файл:

cp wp-config-sample.php wp-config.php

Откройте его в текстовом редакторе:

nano wp-config.php

В этом файле нужно только указать учётные данные БД, созданной в первом разделе руководства.

Найдите параметры DB_NAME, DB_USER и DB_PASSWORD. Укажите имя БД, имя пользователя и пароль.

// ** MySQL settings – You can get this info from your web host ** //

/** The name of the database for WordPress */

define(‘DB_NAME’, ‘wordpress’);

/** MySQL database username */

define(‘DB_USER’, ‘wordpressuser’);

/** MySQL database password */

define(‘DB_PASSWORD’, ‘password’);

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

4: Перемещение файлов

Теперь нужно переместить файлы WordPress в каталог document root (в нём хранятся все файлы сайта).

Команда rsync – пожалуй, самый простой способ сделать это. Она сохраняет права на файлы и отвечает за целостность данных.

Согласно руководству по установке LAMP в Ubuntu 14.04, root-каталог сайта находится в /var/www/html/. Переместите в него файлы WordPress:

sudo rsync -avP ~/wordpress/ /var/www/html/

Откройте root-каталог сайта:

cd /var/www/html

Теперь нужно изменить права на файлы.

Передайте все права не-root пользователю (с доступом к sudo), при помощи которого вы планируете работать с сайтом. Для этого можно использовать и текущий аккаунт, хотя некоторые предпочитают создавать отдельного пользователя.

В руководстве права будут переданы текущему пользователю по имени demo.

sudo chown -R demo:www-data *

Также нужно изменить права доступа к каталогу uploads, чтобы иметь возможность подгружать в него контент сайта.

Создайте каталог uploads вручную в каталоге wp-content в document root.

mkdir /var/www/html/wp-content/uploads

Теперь нужно передать веб-серверу права на запись в этом каталоге. Для этого нужно сделать владельцем каталога группу www-data:

sudo chown -R :www-data /var/www/html/wp-content/uploads

5: Веб-интерфейс WordPress

Завершить установку WordPress нужно при помощи веб-интерфейса.

Откройте браузер и перейдите по ссылке:

http://server_domain_name_or_IP

На экране появится начальная страница установки, которая предложит создать учетную запись администратора.

Введите информацию о сайте и учетной записи администратора. После этого нажмите на кнопку Install.

WordPress попросит подтвердить установку и предложит войти при помощи учётных данных администратора.

Предоставьте учётные данные, чтобы получить доступ к панели инструментов администратора WordPress.

6: Настройка «чистых» ссылок (опционально)

По умолчанию WordPress создаёт URL-ы динамически:

http://server_domain_name_or_IP/?p=1

Такие ссылки очень неудобны для посетителей и поисковых систем, потому их, как правило, заменяют «чистыми» ссылками, более простыми для восприятия.

Настройка Apache для поддержки перезаписи URL-адресов

Для начала нужно отредактировать файл виртуального хоста WordPress и настроить поддержку переопределения инструкций файлами .htaccess.

По умолчанию это файл 000-default.conf; в случае если вы создали другой конфигурационный файл, подкорректируйте команду:

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

Измените значение ServerName и создайте раздел Directory, который разрешит переопределения.

<VirtualHost *:80>

ServerAdmin webmaster@localhost

DocumentRoot /var/www/html

ServerName server_domain_name_or_IP

<Directory /var/www/html/>

AllowOverride All

</Directory>

. . .

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

После этого нужно включить модуль rewrite:

sudo a2enmod rewrite

Затем перезапустите Apache:

sudo service apache2 restart

Файл .htaccess

Apache поддерживает переопределение инструкций файлами .htaccess. Теперь нужно создать сам файл в каталоге document root:

touch /var/www/html/.htaccess

На данный момент этот файл принадлежит текущему пользователю и группе, в которой он состоит, но должен принадлежать веб-серверу Apacheи его группе. Измените владельца файла:

sudo chown :www-data /var/www/html/.htaccess

Теперь можно настроить права доступа. WordPress может самостоятельно генерировать правила перезаписи; для этого ему нужны права на запись в этом файле. Тогда WordPress сможет автоматически добавлять и выполнять  правила. В противном случае редактировать этот файл придется вручную.

Прежде чем передать WordPress права на запись в файле, нужно решить, что важнее: удобство или безопасность.

Если вы хотите, чтобы система WordPress автоматически обновляла файл с правилами перезаписи, передайте ей необходимые для этого права:

chmod 664 /var/www/html/.htaccess

Если вы хотите обновлять файл вручную, передайте веб-серверу права на чтение файла:

chmod 644 /var/www/html/.htaccess

Настройка «чистых» ссылок в WordPress

Откройте интерфейс администратора WordPress.

В левом меню найдите раздел Settings и выберите в нём Permalinks.

Здесь, на экране Permalink Settings, можно выбрать один из предварительно подготовленных вариантов настройки ссылок, а можно создать свою собственную настройку.

Сделав свой выбор, нажмите Save Changes. Это сгенерирует правила перезаписи ссылок и запишет их в подготовленный ранее файл .htaccess.

Если вы дали веб-серверу право на запись в файле .htaccess,экране появится сообщение:

Permalink structure updated.

Если же веб-сервер имеет только право на чтение файла .htaccess, вы получите правила перезаписи, которые нужно добавить в файл вручную.

Скопируйте правила и добавьте их в файл:

nano /var/www/html/.htaccess