Установка WordPress на Apache на сервере FreeBSD 10.1
FreeBSD | Комментировать запись
WordPress – это популярная система управления контентом (CMS) и блог-платформа, позволяющая быстро настраивать веб-сайты. Благодаря поддержке плагинов и шаблонов эта CMS отличается гибкостью настройки и позволяет отладить функционал сайта согласно требованиям разработчика. WordPress поддерживает самые различные сайты, от простого блога до полноценного e-commerce сайта.
Данное руководство поможет установить WordPress на веб-сервер Apache в FreeBSD 10.1.
Требования
Для выполнения руководства нужно предварительно установить стек FAMP (FreeBSD, Apache, MySQL, PHP). Инструкции по установке стека можно найти по этой ссылке.
В руководстве предполагается, что WordPress будет обслуживать сайт из root-каталога (например, http://example.com/) и что каталог document root пуст (или содержит только стандартный файл index.html).
Примечание: В этом руководстве, как и в руководстве по установке стека FAMP, используется PHP 5.6.
1: Установка дополнительных модулей PHP
Для корректной работы WordPress необходимо установить дополнительные модули PHP. Это можно сделать при помощи pkg.
Запустите следующую команду:
sudo pkg install php56-mysql \
php56-xml \
php56-hash \
php56-gd \
php56-curl \
php56-tokenizer \
php56-zlib \
php56-zip
Каждый из этих модулей отвечает за выполнение различных функций; например, php56-gd обрабатывает изображения, php56-curl позволяет WordPress загружать файлы с внешних серверов (при обновлении пакетов). Если стек FAMP был установлен согласно предложенному ранее руководству, на сервере уже установлен модуль php56-mysql, позволяющий WordPress взаимодействовать с MySQL.
2: Подготовка базы данных MySQL
WordPress использует реляционные базы данных (например, MySQL) для управления и хранения данных о пользователях и сайтах. Создайте БД для WordPress.
Запустите сессию root-пользователя MySQL:
mysql -u root -p
Программа запросит root-пароль MySQL, после чего на экране появится командная строка MySQL.
Теперь нужно создать БД для хранения данных; в данном руководстве она называется wordpress. Выберите любое (желательно описательное) имя для БД и укажите его в команде.
CREATE DATABASE wordpress;
Примечание: Все команды MySQL должны заканчиваться символом точки с запятой.
После этого нужно создать аккаунт пользователя MySQL, который будет использовать система WordPress для взаимодействия с БД. Вместо условных данных wordpressuser (имя пользователя) и password (его пароль) укажите свои данные.
CREATE USER wordpressuser@localhost IDENTIFIED BY 'password';
Итак, теперь WordPress может использовать отдельную БД MySQL; осталось только передать права доступа новому пользователю.
GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost;
После этого нужно обновить привилегии MySQL:
FLUSH PRIVILEGES;
Чтобы закрыть командную строку MySQL, введите:
exit
Теперь БД полностью готова к работе с WordPress.
3: Загрузка WordPress
Далее нужно загрузить файлы WordPress с сайта проекта.
Архив самой актуальной версии WordPress всегда доступен по одной и той же ссылке. Загрузите его в домашний каталог:
cd ~
fetch http://wordpress.org/latest.tar.gz
Затем распакуйте архив:
tar xvf latest.tar.gz
Содержимое архива будет извлечено в подкаталог wordpress в домашнем каталоге.
Теперь можно удалить архив WordPress.
rm latest.tar.gz
4: Настройка WordPress
Теперь нужно настроить WordPress для использования созданной ранее БД.
Откройте каталог wordpress:
cd ~/wordpress
Чтобы упростить настройку, используйте образец конфигурационного файла WordPress, wp-config-sample.php, в качестве шаблона. Скопируйте его в стандартный конфигурационный файл WordPress, который называется wp-config.php:
cp wp-config-sample.php wp-config.php
После этого откройте этот файл для редактирования:
vi wp-config.php
В нём нужно откорректировать только параметры MySQL:
- 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');
Примечание: Замените условные данные, использованные в настройке, своими данными.
Сохраните и закройте файл.
5: Каталог Document Root
Теперь приложение WordPress использует БД. После этого нужно скопировать приложение в каталог Document Root веб-сервера Apache.
Согласно предложенному ранее руководству по установке стека FAMP, каталог document root находится в /usr/local/www/apache24/data; если в вашей настройке для этого используется другой каталог, откорректируйте команды.
Скопируйте файлы WordPress в root-каталог:
sudo cp -rp ~/wordpress/* /usr/local/www/apache24/data/
После этого передайте права на файлы WordPress пользователю и группе www, при помощи которых запускается процесс Apache. в противном случае у Apache не будет доступа к файлам.
sudo chown -R www:www /usr/local/www/apache24/data/*
Теперь Apache обслуживает файлы WordPress.
6: Установочный скрипт WordPress
После этого нужно запустить установочный скрипт WordPress. Этот скрипт задаст вам несколько вопросов о сайте WordPress и инициирует БД.
В браузере откройте домен или IP-адрес:
http://example.com
На экране появится окно Language Select, предлагающее выбрать язык сайта. Определившись с этим, нажмите Continue.
После этого на экране появится страница установки WordPress. Укажите название сайта в поле Site Title, а затем укажите имя и пароль администратора.
Укажите все запрашиваемые данные и нажмите кнопку Install WordPress.
WordPress подтвердит установку и предложит войти при помощи созданного только что пользователя:
Success!
WordPress has been installed. Were you expecting more steps? Sorry to disappoint.
Нажмите кнопку Log In и введите учётные данные пользователя. После этого на экране появится панель управления WordPress.
Сайт WordPress запущен!
7: Настройка ссылок (опционально)
По умолчанию WordPress использует в создаваемых URL-адресах ID записи. К примеру, ссылка на вторую запись будет выглядеть так:
http://example.com/?p=2
Но WordPress может создавать и «чистые» URL-ы, переписывая их в более удобный для восприятия формат. К примеру, WordPress может указывать в ссылке название записи:
http://example.com/my-second-post/
Для того чтобы использовать «чистые» ссылки, нужно настроить Apache.
Настройка Apache для поддержки «чистых» ссылок
Для начала нужно включить модуль rewrite. Откройте конфигурационный файл Apache:
sudo vi /usr/local/etc/apache24/httpd.conf
Найдите и раскомментируйте следующую строку:
LoadModule rewrite_module libexec/apache24/mod_rewrite.so
После этого нужно разрешить файлам .htaccess переопределять настройки Apache. Найдите директиву AllowOverride в разделе <Directory “/usr/local/www/apache24/data”> и замените её значение на All:
AllowOverride All
Сохраните и закройте файл.
Перезапустите Apache:
sudo service apache24 restart
Теперь Apache может переписывать URL-ы. Чтобы система WordPress могла использовать эту функцию, нужно создать файл .htaccess.
Создание файла .htaccess
Откройте каталог document root.
cd /usr/local/www/apache24/data
Создайте в нем файл .htaccess:
sudo touch .htaccess
Передайте права на файл пользователю и группе www, чтобы у WordPress была возможность изменять файлы:
sudo chown www:www .htaccess
Остальные настройки выполняются при помощи панели управления WordPress.
Настройка «чистых» ссылок в WordPress
Чтобы получить доступ к интерфейсу администратора WordPress, откройте ссылку:
http://example.com/wp-admin/
В левом меню найдите раздел Settings и выберите в нём Permalinks.
Здесь, на экране Permalink Settings, можно выбрать один из предварительно подготовленных вариантов настройки ссылок, а можно создать свою собственную настройку.
Сделав свой выбор, нажмите Save Changes. Это сгенерирует правила перезаписи ссылок и запишет их в подготовленный ранее файл .htaccess.
На экране появится сообщение:
Permalink structure updated.
Откройте какую-нибудь запись и убедитесь, что ссылки теперь выглядят иначе.
Tags: Apache, FAMP Stack, FreeBSD 10.1, PHP, WordPress