Menu

Установка WordPress под CentOS 7

В этой статье рассмотрим процесс установки и конфигурации Wordpress 4.0 на CentOS 7.0. WordPress появился в 2003 в виде нескольких строк кода, для улучшения типографии при повседневном наборе текста и имел небольшое количество пользователей. С тех пор WordPress превратился в мощнейший движок для создания блогов, используемый на миллионах сайтов миллионами пользователей каждый день. Рассмотрим процесс установки современной версии WordPress на CentOS 7.0 в виде простой последовательности действий.

 

1. Предварительные замечания

Эта статья актуальна для сервера CentOS 7.0, поэтому вы должны сначала установить операционную систему и веб-окружение. Система должна иметь статический IP-адрес. В нашем случае будем использовать 10.4.0.10 в качестве IP-адреса, имя хоста может быть произвольным или отсутствовать.

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

2. Инициализация баз данных

Базы данных для Wordpress 4.0 создаются следующим образом:

mysql -u root -p

Затем присвоим значения:database=wordpressdb user=wordpressuser и password=wordpresspassword:

CREATE DATABASE wordpressdb;
CREATE USER wordpressuser@localhost IDENTIFIED BY 'wordpresspassword';
GRANT ALL PRIVILEGES ON wordpressdb.* TO wordpressuser@localhost;

Двигаемся далее:

FLUSH PRIVILEGES;
exit

Перезапустим службы:

systemctl restart httpd.service
systemctl restart mariadb.service

Далее необходимо настроить сетевой экран для работы с http и https следующим образом:

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

3. Установка WordPress 4.0

Для начала создадим директорию temp, в которую загрузим последнюю версию Wordpress:

mkdir temp
cd temp
yum install wget unzip net-tools
wget http://wordpress.org/latest.zip

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

yum -y install php-gd
systemctl restart httpd.service

распакуйтеzip файл Wordpress 4.0 в папку:

unzip -q latest.zip -d /var/www/html/

Теперь предоставим директории соответствующие права доступа

chown -R apache:apache /var/www/html/wordpress
chmod -R 755 /var/www/html/wordpress

Далее нам нужно вручную создать директорию uploads (для заливки файлов) внутри директории wp-content. Таким образом мы создадим родительскую директорию нашего контента.

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

Теперь необходимо разрешить веб-серверу производить запись в данную директорию. Это можно сделать, назначив владельцем группу apache. Это позволит серверу создавать файлы и другие директории внутри исходной директории, таким образом мы сможем в будущем загружать содержимое на сервер средствами движка WordPress (без FTP). Введите следующее:

chown -R :apache /var/www/html/wordpress/wp-content/uploads

Затем нам необходимо проверить файл конфигурации, для этого нам необходимо скопировать его (за базу берётся стандартный файл примера). Тестовый файл конфигурации находится по адресу /var/www/html/wordpress:

cd /var/www/html/wordpress/
cp wp-config-sample.php wp-config.php
mcedit wp-config.php
[...]

// ** MySQL settings - You can get this info from your web host ** //
/** The name of the database for WordPress */
define('DB_NAME', 'wordpressdb');
/** MySQL database username */
define('DB_USER', 'wordpressuser');
/** MySQL database password */
define('DB_PASSWORD', 'wordpresspassword');
[...]

Смените значения на те, которые вы создали при инициализации баз данных.

Теперь обратимся к нашему сайту через web-интерфейс, для этого перейдем по адресу:http://10.4.0.10/wordpress/wp-admin/install.php:

Сначала выберите язык и нажмите Continue:

Далее задайте значения для вашего сайта, в нашем случае зададим следующее:

Site Title = Wordpress-testsite
Admin Email = Этот адрес электронной почты защищен от спам-ботов. У вас должен быть включен JavaScript для просмотра.
Username = admin
Admin password = testpassword
Confirm Admin Password = testpassword

Значения могут отличаться, вы можете задать любые значения по вашему выбору. После этого нажмите Install Wordpress:

Далее мы попадаем на страницу входа, введите ваши имя пользователя и пароль и затем нажмите LogIn.

Необходимо предоставить пару имя/пароль, которые мы выбрали при установке WordPress.

Далее появится стандартное окно приветствия Wordpress. В браузере также можно проверить текущую версию Wordpress.

4 Конфигурация ЧПУ

Эта часть не является обязательной.

По умолчанию WordPress динамически создаёт URL-адреса, выглядит это примерно следующим образом: wordpress_blog_name/?p=1. Это не самый удобный интерфейс для посетителей или поисковых систем, поэтому большинство пользователей меняют формат адреса, добиваясь ЧПУ. WordPress имеет возможность создать «приятную» ссылку, которая сделает URL более удобным для пользователя. Для создания ЧПУ необходимо выполнить следующее:

4.1 Перезапись средствами Apache

Модифицируем виртуальный хост файл apache для Wordpress. Это позволит нам производить замену для.htaccess. Для этого редактируем виртуальный хост файл и добавим следующее:

mcedit /etc/httpd/conf/httpd.conf

[...]
# Fluent access to the default document root:
<Directory "/var/www/html">
# # Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinksSymLinksifOwnerMatchExecCGIMultiViews
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
# The Options directive is both complicated and important.
Options Indexes FollowSymLinks
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfoAuthConfig Limit
AllowOverride All
[...]

Изменить значение с AllowOverride None на AllowOverride All, затем перезапустите службу:

systemctl restart httpd.service

4.2 Создание файла .htaccess

Создадим файл .htaccess в корне документа, это позволит Apache производить перезапись:

touch /var/www/html/wordpress/.htaccess

Нам потребуется, что бы север был владельцем группы, для этого настроим принадлежность группы следующим образом:

chown apache /var/www/html/wordpress/.htaccess

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

chmod 664 /var/www/html/wordpress/.htaccess

Если вы хотите обновлять файл вручную (это немного увеличит безопасность), вы можете дать право доступа серверу только на чтение:

chmod 644 /var/www/html/wordpress/.htaccess

В нашем случае будем использовать разрешения 644.

4.3 Настройки ЧПУ в WordPress

Теперь нам доступны настройки ЧПУ в панели управления WordPress. Перейдите Settings --> Permalinks:

Далее выберите необходимый вам пункт.

Когда вы сделаете выбор нажмите "Save Changes", что позволит перезаписать предыдущие правила.

Случай 1: Если вы открыли доступ серверу к вашему файлу .htaccess, вы увидите сообщение «Permalink Structure updated»

Случай 2:Если вы не открыли доступ серверу для записи файла .htaccess, вам придётся перезаписывать правила вручную.

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

Скопируйте все строки, доверяя движку WordPress и затем отредактируйте файл на вашем сервере:

mcedit /var/www/html/wordpress/.htaccess

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

Поздравляю! Вы установили полностью функциональный WordPress.

13 комментарии

  • DonaldEt

    написал DonaldEt

    Среда, 03 Декабрь 2014 17:14

    Спасибо, всё получилось, если пошагово выполнять!

    Пожаловаться
  • Ильяс

    написал Ильяс

    Вторник, 11 Август 2015 17:12

    Спасибо! Отличная статья!

    Пожаловаться
  • Антон

    написал Антон

    Понедельник, 18 Январь 2016 09:58

    Спасибо огромное за такую подробную инструкцию. Я бездумно выполнил все шаги, и всё заработало!

    Пожаловаться
  • Андрей

    написал Андрей

    Воскресенье, 24 Январь 2016 23:23

    А можете подробнее описать что вы выполняли.
    Я установил по инструкции ISPConfig 3 а как дальше поставить WordPress

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Четверг, 28 Январь 2016 18:52

    Добрый день!
    Андрей, в этой статье рассказывается, как поставить CSM, используя управление сервером по протоколу SSH. ISPConfig - это тема совсем другой статьи.

    Пожаловаться
  • Julia

    написал Julia

    Пятница, 19 Февраль 2016 04:20

    Тут описаны часто встречающиеся проблемы, возникающие в ходе установки системы. Для более детальной информации и решению проблем с установкой WordPress, обратитесь к Руководству.

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Понедельник, 29 Февраль 2016 20:22

    Julia, спасибо за Ваш высоко-информативный комментарий!

    Пожаловаться
  • Антон Из Владивостока

    написал Антон Из Владивостока

    Среда, 27 Апрель 2016 14:33

    Спасибо за материал!

    Пожаловаться
  • bercy

    написал bercy

    Пятница, 05 Август 2016 06:42

    Тут представлены краткие инструкций, для тех, кто уже знаком с процессом установки различных веб-приложений. Хочу подробные инструкции.

    Пожаловаться
  • Stankopil

    написал Stankopil

    Воскресенье, 04 Сентябрь 2016 19:38

    Первым делом вам нужно зайти по ssh на ваш сервер CentOS. Будем устанавливать необходимые компоненты, для установки cms wordpress.

    Пожаловаться
  • Антон

    написал Антон

    Четверг, 09 Ноябрь 2017 09:21

    Подскажите, пожалуйста. Возникла проблема с ссылками чпу при переносе сайта с xamp. Работают только ссылки простого вида, по умолчанию. Кастомные ни в какую... Сервер, не Wordpress, выдаёт 404 ошибку, главная страница сайта при этом открывается. Rewrite mod разрешен, AllowOverride All присутствует, необходимые модули подгружаются .htaccess пробовал переписывать и вручную и средствами cms - безрезультатно... Может косяк где-то в базе данных mysql? Как проверить?

    Пожаловаться
  • Антон

    написал Антон

    Пятница, 10 Ноябрь 2017 05:01

    Немного предыстории. Заказала небольшая компания мне сайт на Wordpress. В качестве демо установил локально на свой ноут на xamp или wamp (уже точно не помню). Сайт настроил, кое-где подправил код, установил всё необходимое, наполнил контентом. Показал заказчику. Всё понравилось. Решили залить на их сервер CentOS. Заливал всё сам, так как своего админа у них не было. Перед установкой удалил сайт на Drupal. В настройке ссылок ЧПУ на тот момент необходимости не было, но через год компания решила продвинуть свой сайт по SEO. Опять обратились ко мне. И тут я обнаружил, что произвольные ссылки не работают… Что делать, как исправить, в каком направлении двигаться? Ума не приложу. С CentOS дело имею в первый и пока единственный раз.

    CentOS v. 6.6
    Apache v. 2.2.15
    php v. 5.3.3
    MySQL v. 14.14
    Wordpress v. 4.8.3

    Пожаловаться
  • Владимир Драч

    написал Владимир Драч

    Пятница, 10 Ноябрь 2017 06:49

    Добрый день!
    Антон, не знаю, в чём дело, но, судя по Вашему описанию, дело НЕ в операционной системе. Ответственно заявляю, Centos тут ни при чём (mysql тоже). Для теста попробуйте клонировать рабочий сайт обратно на ноутбук. Проверяйте настройки самого сайта, поищите статьи по запросам "Wordpress + ЧПУ". То есть проблема или с роутером самого WP или с Apache.

    Пожаловаться
Авторизуйтесь, чтобы получить возможность оставлять комментарии

Другие материалы в этой категории:

Go to top