
WordPress — самая популярная в мире платформа для блогов и CMS с открытым исходным кодом, на которой сегодня работает четверть всех веб-сайтов в интернете. Она основана на PHP и MySQL и обладает множеством функций, которые можно расширить с помощью бесплатных и платных плагинов и тем. WordPress — это самый простой способ создать интернет-магазин, веб-сайт или блог.
В этом руководстве описывается, как установить WordPress на CentOS 7. Это довольно простой процесс, который займет менее десяти минут.
Мы будем использовать стек LEMP с Nginx в качестве веб-сервера, SSL-сертификат, последнюю версию PHP 7.2 и MySQL/MariaDB в качестве сервера базы данных.
Предпосылки
Прежде чем продолжить изучение этого руководства, убедитесь, что выполнены следующие предварительные условия:
- Укажите доменное имя, указывающее на публичный IP-адрес вашего сервера. В этом руководстве мы будем использовать
example.com. - Выполнен вход как пользователь с привилегиями sudo .
- Nginx установлен согласно этим инструкциям .
- Для вашего домена установлен SSL-сертификат. Вы можете создать бесплатный SSL-сертификат Let's Encrypt, следуя этим инструкциям .
Создание базы данных MySQL
WordPress хранит свои данные и конфигурацию в базе данных MySQL. Первым шагом является создание базы данных MySQL, учётной записи пользователя MySQL и предоставление доступа к ней .
Если на вашем сервере Ubuntu еще не установлены MySQL или MariaDB, вы можете выполнить установку, выполнив одну из приведенных ниже инструкций:
Войдите в оболочку MySQL, выполнив следующую команду:
mysql -u root -p
В оболочке MySQL выполните следующие операторы SQL, чтобы создать базу данных с именем wordpress , пользователя с именем wordpressuser и предоставить пользователю все необходимые разрешения:
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'change-with-strong-password';FLUSH PRIVILEGES;EXIT;
Установка PHP 7.2
CentOS 7 поставляется с PHP версии 5.4. Рекомендуемая версия PHP для WordPress — PHP 7.2.
Чтобы установить PHP и все необходимые расширения PHP, выполните следующие команды:
sudo yum install epel-release yum-utilssudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpmsudo yum-config-manager --enable remi-php72sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl
Мы установили PHP FPM, поскольку будем использовать Nginx в качестве веб-сервера.
По умолчанию PHP FPM будет работать от имени пользователя apache на порту 9000. Изменим пользователя на nginx и переключимся с TCP-сокета на Unix-сокет. Для этого откройте файл /etc/php-fpm.d/www.conf и отредактируйте строки, выделенные жёлтым:
/etc/php-fpm.d/www.conf
... user = nginx ... group = nginx ... listen = /run/php-fpm/www.sock ... listen.owner = nginx listen.group = nginx
Убедитесь, что каталог /var/lib/php имеет правильного владельца, с помощью следующей команды chown :
sudo chown -R root:nginx /var/lib/php
После внесения изменений включите и запустите службу PHP FPM:
sudo systemctl enable php-fpmsudo systemctl start php-fpm
Загрузка WordPress
Перед загрузкой архива WordPress сначала создадим каталог, в котором мы разместим файлы WordPress:
sudo mkdir -p /var/www/html/example.com
Следующий шаг — загрузить последнюю версию WordPress со страницы загрузки WordPress с помощью следующей команды wget :
cd /tmpwget https://wordpress.org/latest.tar.gz
После завершения загрузки извлеките архив WordPress и переместите файлы в корневой каталог документов домена:
tar xf latest.tar.gzsudo mv /tmp/wordpress/* /var/www/html/example.com/
Установите правильные разрешения, чтобы веб-сервер имел полный доступ к файлам и каталогам сайта:
sudo chown -R nginx: /var/www/html/example.com
Настройка Nginx
К настоящему моменту в вашей системе уже должен быть установлен Nginx с SSL-сертификатом. Если нет, проверьте предварительные требования для этого руководства.
Чтобы создать новый серверный блок для нашего экземпляра WordPress, мы воспользуемся рецептом Nginx с официального сайта Nginx.
Откройте текстовый редактор и создайте новый блок сервера nginx :
sudo nano /etc/nginx/conf.d/example.com.conf
Добавьте следующие строки:
/etc/nginx/conf.d/example.com.conf
# Redirect HTTP -> HTTPS server { listen 80 ; server_name www.example.com example.com ; include snippets/letsencrypt.conf ; return 301 https://example.com $request_uri ; } # Redirect WWW -> NON WWW server { listen 443 ssl http2 ; server_name www.example.com ; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem ; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem ; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem ; include snippets/ssl.conf ; return 301 https://example.com $request_uri ; } server { listen 443 ssl http2 ; server_name example.com ; root /var/www/html/example.com ; index index.php ; # SSL parameters ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem ; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem ; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem ; include snippets/ssl.conf ; include snippets/letsencrypt.conf ; # log files access_log /var/log/nginx/example.com.access.log ; error_log /var/log/nginx/example.com.error.log ; location = /favicon.ico { log_not_found off ; access_log off ; } location = /robots.txt { allow all ; log_not_found off ; access_log off ; } location / { try_files $uri $uri/ /index.php? $args ; } location ~ .php$ { try_files $uri = 404 ; fastcgi_pass unix:/run/php-fpm/www.sock ; fastcgi_index index.php ; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name ; include fastcgi_params ; } location ~ * .(js|css|png|jpg|jpeg|gif|ico|svg) $ { expires max ; log_not_found off ; } }
Не забудьте заменить example.com на свой домен WordPress и указать правильный путь к файлам SSL-сертификата. Все HTTP-запросы будут перенаправляться на HTTPS . Фрагменты, используемые в этой конфигурации, созданы в этом руководстве .
Перед перезапуском службы Nginx проверьте конфигурацию, чтобы убедиться в отсутствии синтаксических ошибок:
sudo nginx -t
Если ошибок нет, вывод должен выглядеть так:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
и вы можете перезапустить Nginx , введя:
sudo systemctl restart nginx
Завершение установки WordPress
Теперь, когда WordPress загружен и настройка сервера завершена, вы можете завершить установку через веб-интерфейс.
Откройте браузер, введите свой домен, и появится экран, подобный следующему:

Выберите нужный вам язык и нажмите кнопку Continue .
Далее вы увидите следующую информационную страницу, нажмите на кнопку Let's go!

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

Запустите установку WordPress, нажав кнопку Run the Installation .

На следующем шаге вам нужно будет ввести имя для вашего сайта WordPress и выбрать имя пользователя (в целях безопасности не используйте «admin»).
Установщик автоматически сгенерирует для вас надёжный пароль. Не забудьте сохранить его. Вы также можете задать пароль самостоятельно.
Введите свой адрес электронной почты и укажите, хотите ли вы запретить поисковым системам индексировать сайт (не рекомендуется).

Нажмите Install WordPress , и после завершения установки вы будете перенаправлены на страницу с сообщением об установке WordPress.
Чтобы получить доступ к странице входа в WordPress, нажмите кнопку Log in .

Введите ваше имя пользователя и пароль.

Вы будете перенаправлены на панель управления WordPress.

Отсюда вы можете начать настраивать свою установку WordPress, устанавливая новые темы и плагины.
Заключение
Поздравляем! Вы успешно установили WordPress с Nginx на свой сервер CentOS 7.Книга «Первые шаги с WordPress» — хорошая отправная точка для изучения того, как сделать свой новый сайт WordPress своим собственным.
Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.
centos wordpress mysql mariadb cms nginx Не используете CentOS 7?
Выберите другую ОС: убунту 18.04
Связанные руководства
- Как установить WordPress с Nginx в Ubuntu 18.04
- Как установить Drupal на CentOS 7
- Как установить WordPress с Apache на CentOS 7
- Как установить WordPress с Apache в Ubuntu 18.04
- Как установить phpMyAdmin с Nginx на CentOS 7
- Как установить Drupal на Ubuntu 18.04
- Как установить и настроить Redmine на CentOS 7