Установка WordPress CMS

Peter Boy Version F38,F39 Last review: 2024-01-14
WordPress — это распространённая система блогов, которую также можно использовать для простых веб-сайтов. Fedora включает пакет RPM, поэтому установка очень упрощена. Эта статья посвящена деталям реализации, специфичным для Fedora.

WordPress — широко используемое приложение, и в Интернете имеется соответствующее количество информации. Сам проект WordPress предоставляет обширную документацию вышестоящего проекта.

Для полноты картины: Хотя WordPress широко используется, вам следует тщательно подумать, действительно ли вам нужна динамическая CMS, которая генерирует каждую страницу заново при каждом запросе.

  • Если ваши страницы остаются в основном неизменными после создания, различные генераторы статических сайтов, вероятно, более практичны и требуют меньше времени на поддержку.

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

    Как минимум, WordPress следует устанавливать в контейнер. Fedora Server предлагает несколько вариантов для этого, включая некоторые с небольшими дополнительными усилиями по управлению.

Пакет Fedora WordPress RPM устанавливает WordPress, близкий к вышестоящему проекту, при этом максимально плавно интегрируясь в среду выполнения Fedora.

Ещё один хороший начальный обзор предоставляет статья Fedora Magazine How to install WordPress on Fedora (2017).

Предварительные требования

  • Мы предполагаем правильно установленный выпуск Fedora Server Edition 38 или 39. Подробности см. в Fedora Server Installation Guide.

  • WordPress хранит большую часть содержимого в базе данных. Соответственно, ему требуется доступ к работающей системе баз данных, и без неё он даже не запустится. В настоящее время он больше не поддерживает PostgreSQL, предпочитаемую и специально поддерживаемую систему баз данных Fedora Server Edition. Он поддерживает только MariaDB или MySQL, которые также включены в Fedora.

    Поэтому вам нужно установить либо MariaDB, либо MySQL, следуя Installing MySQL/MariaDB. С точки зрения WordPress обе системы работают одинаково гладко. Следуя предпочтению Fedora к действительно свободному программному обеспечению, здесь мы используем MariaDB.

    Прежде чем начать установку, создайте требуемое хранилище. Самый простой и быстрый способ — использовать Cockpit (выберите вкладку хранилища, а затем соответствующую группу томов в правом верхнем углу).

  • Кроме того, WordPress нужен веб-сервер для доставки страниц. Fedora Server Edition и пакет Fedora WordPress поддерживают httpd, версию веб-сервера Apache от Fedora. Конечно, здесь возможны и другие веб-серверы. Тогда вам придётся самостоятельно выполнить адаптацию к WordPress.

    Если это ещё не сделано, установите пакет Fedora Web Server. Если ваш сервер будет обслуживать только сайт WordPress, вы можете опустить раздел «Setup a Web site».

Установка WordPress

  1. Установите пакет WordPress. Он также автоматически устанавливает PHP как зависимость.

    # dnf install wordpress
  2. Добавьте базу данных и пользователя базы данных для WordPress в СУБД MariaDB.

    # mysql -u root
    MariaDB [(none)]> show databases;
    MariaDB [(none)]> CREATE DATABASE wordpress ;
    MariaDB [(none)]> CREATE USER 'wordpress'   IDENTIFIED BY 'wp-test-proj';
    MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress.*  TO 'wordpress';
    MariaDB [(none)]> quit;
    #
  3. Проверьте подключение к базе данных через TCP/IP

    $ mysql -u wordpress wordpress  -p
    Enter password:
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 18
    Server version: 10.5.20-MariaDB MariaDB Server
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [wordpress]> quit
    $
  4. Настройте WordPress для доступа к базе данных, определённой выше

    Отредактируйте файл конфигурации WordPress, который в Fedora хранится в /etc/wordpress (для достижения полной интеграции с Fedora).

    # vim /etc/wordpress/wp-config.php
    define( 'DB_NAME', 'xxxxx' );
    define( 'DB_USER', 'xxxx' );
    define( 'DB_PASSWORD', 'xxxxxxxx' );
    define( 'DB_HOST', 'xxxx' );
  5. Включение публичного доступа

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

    # vim /etc/httpd/conf.d/wordpress.conf
    
    Alias /wordpress /usr/share/wordpress
    
    # Access is only allowed via local access
    # Change this once configured
    
    <Directory /usr/share/wordpress>
      AllowOverride Options
      #Require local                       # <== mod
      Require all granted                  # <== add
    </Directory>
  6. Защитите свой сайт во время настройки и разработки

    Обычно настройка сайта и особенно разработка содержимого занимает некоторое время. В течение этого периода вы можете захотеть ограничить доступ только разработчиками и коллегами.

    Дополнительно измените файл конфигурации и добавьте в конец:

    # vim /etc/httpd/conf.d/wordpress.conf
    
    Alias /wordpress /usr/share/wordpress
    
    # Access is only allowed via local access
    # Change this once configured
    ...
    ...
      </FilesMatch>
    </Directory>
    
    ## Append the following lines to temporarily
    ## protect access to the wordpress page
    <Location /wordpress>
      AuthType Basic
      AuthName "Access for developers only"
      AuthUserFile auth.d/validusers
      Require valid-user
    </Location>

    Предоставьте информацию для аутентификации

    # mkdir /etc/httpd/auth.d
    # htpasswd -c /etc/httpd/auth.d/validusers {USER}
    New password:
    Re-type new password:
  7. Наконец, запустите веб-сервер

    # systemctl enable httpd
    # systemctl start httpd
    # systemctl status httpd

Проверьте и настройте свой сайт

  1. На рабочем столе откройте браузер и перейдите к базовому адресу сайта, который вы только что настроили:

    http://example.com

    Примечание: В настоящее время доступ по SSL не определён, доступен только протокол http.

    Отображается страница Fedora по умолчанию.

    Страница Fedora по умолчанию
  2. Ваша установка WordPress доступна по адресу

    http://example.com/wordpress

    Если вы реализовали ограничение доступа, как предложено, вы получите экран входа Apache по умолчанию. В противном случае и после аутентификации вы увидите базовую страницу графической настройки WordPress.

    Страница Fedora по умолчанию

    Заполните различные пункты по своему усмотрению.

Финальная тонкая настройка

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

  • Настройте базовый адрес

    В частности, вы хотите изменить базовый адрес вашего сайта WordPress, например с WordPress на mycuteblog. Отредактируйте файл конфигурации Apache для WordPress:

    # vim /etc/httpd/conf.d/wordpress.conf
    ## Alias /wordpress /usr/share/wordpress  # <== Mod
    Alias /mycuteblog  /usr/share/wordpress   # <== Add
    
    # systemctl restart httpd
  • В качестве альтернативы вы можете захотеть получить доступ к страницам WordPress по базовому адресу вашего сервера, в этом руководстве — example.com. Опять же, измените файл конфигурации Apache для WordPress.

    # vim /etc/httpd/conf.d/wordpress.conf
    ## Alias /wordpress /usr/share/wordpress  # <== Mod
    ## Access wordpress via base address instead # <== Add
    DocumentRoot /usr/share/wordpress            # <== Add
    
    # systemctl restart httpd