Заметки сисадмина
Назад

Установка WordPress на локальной Linux-машине (LAMPP)

Опубликовано: 19.10.2012
Время на чтение: 34 мин
0
986

В данной заметке установим и настроим локальный веб-сервер на базе OS Linux. Данное решение поможет нам предварительно тестировать конфигурацию наших сайтов и блогов, а уже после отправлять конечное решение на хостинг.

Перед установкой веб-сервера на локальной или виртуальной машине необходимо определится, во-первых, с выбором операционной системы (Windows, Linux), во-вторых - способом установки: в виде отдельных пакетов / приложений,  любо воспользоваться уже готовой сборкой типа XAMPP, LAMP, Denwer и прочие. Лично я на данный момент предпочитаю вариант с уже готовой сборкой, например XAMPP под Linux. С одной стороны это экономия времени, поскольку в отличии от "поэтапной" установки всех пакетов в консоли,  установка уже готового пакета занимает минимум времени, с другой, системные файлы хранится в одной директории, а не раскиданы по директориям как это обычно при традиционном способе установки. Кроме того, Linux не так требователен к системным ресурсам, особенно без gui и поэтому прекрасно живет на "виртуалках" с небольшим объемом диска и памяти. Увидев очевидные плюсы, такого варианта было принято решение установить XAMPP на любимый CentOS, правда, только в  32-битном варианте. 64-разрядные ОС, увы не поддерживаются. Итакc, начнем.

1) Подготовка 

Настроим сеть, пропишем имя хоста:

vi /etc/sysconfig/network

с - начать редактирование!

NETWORKING=yes
HOSTNAME=centos12

Включим DHCP Iface, если в сети имеется работающий DHCP-сервер:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

 

DEVICE=eth0
BOOTPROTO=dhcp
HWADDR=00:0B:56:31:2C:4E
ONBOOT=yes

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

DEVICE=eth0
;BOOTPROTO=dhcp
IPADDR=192.168.1.8
NETMASK=255.255.255.0
NETWORK=192.168.1.0
BROADCAST=192.168.1.255
GATEWAY=192.168.1.1
HWADDR=00:0B:56:31:2C:4E
ONBOOT=yes

Настройки DNS находятся в файле /etc/resolv.conf, указываем свои данные:

nameserver 192.168.1.8
nameserver 192.168.1.9

Настроем /etc/hosts:

127.0.0.1 centos12
192.168.1.8 centos12

Перезапускаем демона сети :)

service network restart

Проверим Firewall, разрешим нужные службы:
Для удобства будем использовать графическую утилиту:

yum install system-config-firewall-tui
system-config-firewall-tui

Открываем SSH, ftp, www (http), безопастный-www (https).

Обновляем систему:

yum –y update

Ставим все что потребуется для комфортной работы:

yum install sudo wget mc unzip crontabs

2) Установка XAMPP

Качаем последнюю версию отсюда.

Извлекаем архив в директорию /opt:

tar xvfz xampp-linux-1.8.1.tar.gz -C /opt

Запускаем:

/opt/lampp/lampp start

Должны увидеть следующее:

Проверяем, доступность сервера.

Список основных команд:

/opt/lampp/lampp start # Запуск XAMPP
/opt/lampp/lampp stop # Остановка XAMPP
/opt/lampp/lampp startapache # Запустить только Апач.
/opt/lampp/lampp stopapache # Остановить только Апач.
/opt/lampp/lampp startssl # Запустить только Апач с поддержкой ssl. Поддержка ssl будет активна постоянно, если вы снова перезапустили  XAMPP, то ssl останется.
/opt/lampp/lampp stopssl # Остановить Апач с поддержкой ssl.
/opt/lampp/lampp startmysql # Запустить только MySQL.
/opt/lampp/lampp startmysql # Остановить MySQL.
/opt/lampp/lampp startftp # Запустить ProFTPD сервер. Для доступа к ftp используем следующие учетные данные: (user "nobody", password "lampp").
/opt/lampp/lampp startftp # Остановить ProFTPD сервер.
/opt/lampp/./lampp # Вывести список всех доступных команд.

Список установочных директорий:

/opt/lampp/bin/ - Системная директория XAMPP.
/opt/lampp/htdocs/ - Корневая директория Apache.
/opt/lampp/etc/httpd.conf - Конфиг Apach'а.
/opt/lampp/etc/my.cnf - Конфиг MySQL.
/opt/lampp/etc/php.ini - Конфиг PHP.
/opt/lampp/etc/proftpd.conf - Конфиг ftp-сервера ProFTPd.
/opt/lampp/phpmyadmin/config.inc.php - Конфиг phpMyAdmin.

Для добавления XAMPP в автозагрузку поступим следующим образом:

1) Создадим символическую ссылку:

ln -s /opt/lampp/lampp /etc/init.d/lampp

2) Добавим скрипт в автозагрузку в Runlevels 3 и 5.

chkconfig lampp --level 35 on

Что бы удалить XAMPP запускаем следующую команду:

rm -rf /opt/lampp

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

Для установки wordpress, первым делом необходимо создать и сконфигурировать базу данных. В этом нам поможет phpmyadmin.
Набираем в браузере адрес phpmyadmin'а и неожиданно получаем ошибку Error 403. Access forbidden! New XAMPP security concept:...

Для решения данной проблемы, на сервере переходим в  /opt/lampp/etc/extra и запускаем на редактирование файл - httpd-xampp.conf. В самом конце находим строки следующего содержания:

# New XAMPP security concept
#
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|
server-info))">
Order deny,allow
Deny from all
Allow from ::1 127.0.0.0/8 \
fc00::/7 10.0.0.0/8 172.16.0.0/12 192.168.0.0/16 \
fe80::/10 169.254.0.0/16
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>

Закоментируем строку "Deny from all" и добавим после нее строку "Require all granted"

Order deny,allow
Deny from all
Require all granted

После чего в phpmyadmin создаем новую базу данных. Задаем имя базы и кодировку utf8_general_ci. Нажимаем "Создать".
Затем выбираем созданную базу данных и нажимаем "Проверить привилегии".

Нажимаем "Добавить пользователя" Заполняем поля. Выставляем галочки.

В поле "Глобальные привилегии" выбираем "Отметить все". Нажимаем кнопку "Добавить пользователя".

Качаем последнюю версию WordPress и распаковываем архив в /opt/lampp/htdocs.

Выставим права пользователю nobody,что бы иметь полный доступ к директории wordpress через ftp. Пользователь: nobody Пароль: lampp

chown -R nobody:nobody /opt/lampp/htdocs/wordpress

Находим файл wp-config-sample.php и переименовываем его в  wp-config.php.
Открываем в редакторе и заполняем поля для доступа к базе MySQL.

/** Имя базы данных для WordPress */
define('DB_NAME', 'wp');

/** Имя пользователя MySQL */
define('DB_USER', 'wp');

/** Пароль к базе данных MySQL */
define('DB_PASSWORD', 'wordpress');

/** Имя сервера MySQL */
define('DB_HOST', 'localhost');

Ниже находим такие строки:

define('AUTH_KEY',         'впишите сюда уникальную фразу');
define('SECURE_AUTH_KEY',  'впишите сюда уникальную фразу');
define('LOGGED_IN_KEY',    'впишите сюда уникальную фразу');
define('NONCE_KEY',        'впишите сюда уникальную фразу');
define('AUTH_SALT',        'впишите сюда уникальную фразу');
define('SECURE_AUTH_SALT', 'впишите сюда уникальную фразу');
define('LOGGED_IN_SALT',   'впишите сюда уникальную фразу');
define('NONCE_SALT',       'впишите сюда уникальную фразу');

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

Чуть ниже можно задать свой сложный префикс таблиц. Например.

$table_prefix  = 'wpGDFgdfg545_';

После чего, набираем в адресной строке: http://server/wordpress где указываем имя сайта, логин и пароль для доступа к админке. Нажимаем установить. На этом установку можно считать завершенной. Спасибо за внимание :)

Поделиться
Похожие записи