Установка WordPress на nginx в CentOS 6

Что такое WordPress?

WordPress является свободным инструментом с открытым исходным кодом для построения веб-сайтов и блогов, работающий на php и MySQL. WordPress был создан в 2003, и с тех пор его используют 22% всех новых сайтов, для управления которыми разработано более 20,000 плагинов.

Требования

Чтобы следовать данному руководству, необходимо иметь учетную запись пользователя (не root) со всеми root-привилегиями. Чтобы получить инструкции по созданию такого пользователя, читайте статью “Начальная настройка сервера CentOS 6“.

Кроме того, на виртуальном выделенном сервере должен быть установлен LEMP stack. Прочтите данное руководство, чтобы научиться устанавливать Linux, nginx, MySQL, PHP.

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

1: Загрузка WordPress

Скачать WordPress можно с сайта проекта:

wget http://wordpress.org/latest.tar.gz

Данная команда загрузит заархивированный пакет WordPress прямо в домашний каталог пользователя. Разархивируйте его при помощи команды:

tar -xzvf latest.tar.gz

2: Создание базы данных и пользователя WordPress

После распаковки файлы WordPress будут помещены в подкаталог wordpress домашнего каталога.

Далее нужно создать новый каталог MySQL для WordPress.

Разверните оболочку MySQL:

mysql -u root -p

Для входа используйте root-пароль MySQL. Затем создайте базу данных wordpress, ее пользователя и установите пароль.

Примечание: все команды MySQL должны заканчиваться точкой с запятой.

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

CREATE DATABASE wordpress;
Query OK, 1 row affected (0.00 sec)

Затем создайте нового пользователя. Укажите базу данных и имя пользователя:

CREATE USER wordpressuser@localhost;
Query OK, 0 rows affected (0.00 sec)

Установите пароль для нового пользователя:

SET PASSWORD FOR wordpressuser@localhost= PASSWORD("password");
Query OK, 0 rows affected (0.00 sec)

В завершение передайте все права новому пользователю. Без следующей команды инсталлятор wordpress не запустится.

GRANT ALL PRIVILEGES ON wordpress.* TO wordpressuser@localhost IDENTIFIED BY 'password';
Query OK, 0 rows affected (0.00 sec)

Далее нужно обновить MySQL:

FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)

Закройте оболочку MySQL:

exit

3: Настройка WordPress

Сначала необходимо скопировать образец конфигурационного файла WordPress, расположенного в каталоге WordPress, в новый конфигурационный файл, который нужно будет отредактировать:

cp ~/wordpress/wp-config-sample.php ~/wordpress/wp-config.php

Затем откройте конфигурационный файл WordPress:

sudo nano ~/wordpress/wp-config.php

Найдите в данном файле следующий раздел и внесите правильные имя БД, имя пользователя и пароль.

// ** 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');

Сохраните и закройте файл.

4: Копирование файлов

Загрузка WordPress на сервер почти завершена. Теперь нужно создать каталог для хранения файлов WordPress:

sudo mkdir -p /var/www/wordpress

В завершение нужно переместить распакованные файлы WordPress в root-каталог сайта.

sudo cp -r ~/wordpress/* /var/www/wordpress

Измените права на каталог /var/www, чтобы позволить плагинам WordPress обновляться автоматически,  а также разрешить редактировать файлы по SFTP. В противном случае при выполнении некоторых задач будет появляться предупреждение “To perform the requested action, connection information is required” (Для выполнения действия необходимы сведения о подключении).

Итак, перейдите в каталог сайта:

cd /var/www/

Передайте все права на этот каталог пользователю nginx; не забудьте заменить “username” именем своего пользователя.

sudo chown nginx:nginx * -R
sudo usermod -a -G nginx username

5: Настройка сервера Nginx

Теперь нужно установить виртуальный хост WordPress. Хотя при установке WordPress для этого есть отдельный шаг, веб-сайт nginx предоставляет простой конфигурационный файл.

Откройте файл хоста nginx по умолчанию:

sudo vi /etc/nginx/conf.d/default.conf

Конфигурации должны включать следующие данные (их подробное описание можно найти ниже):

#
# The default server
#
server {
listen       80;
server_name  _;
#charset koi8-r;
#access_log  logs/host.access.log  main;
location / {
root   /var/www/wordpress;
index index.php  index.html index.htm;
}
error_page  404              /404.html;
location = /404.html {
root   /usr/share/nginx/html;
}
# redirect server error pages to the static page /50x.html
#
error_page   500 502 503 504  /50x.html;
location = /50x.html {
root   /usr/share/nginx/html;
}
# proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
#    proxy_pass   http://127.0.0.1;
#}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
location ~ \.php$ {
root           /var/www/wordpress;
fastcgi_pass   127.0.0.1:9000;
fastcgi_index  index.php;
fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
include        fastcgi_params;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
#    deny  all;
#}
}

Данный блок кода:

  • вносит index.php в строку index;
  • делает /var/www/wordpress root-каталогом;
  • снимает комментарий с раздела, который начинается с location ~ \.php$ {;
  • открывает доступ для root к текущему root-каталогу, var/www/wordpress;
  • изменяет строку fastcgi_param, чтобы помочь интерпретатору PHP найти скрипт PHP, который хранится в root-каталоге.

Сохраните изменения, закройте файл и перезапустите nginx, чтобы активировать внесенные изменения:

sudo service nginx restart

6: Запуск установки WordPress

Выполнив вышеописанные действия, перейдите на онлайн-страницу установки WordPress.

Для этого введите домен сайта или IP-адрес виртуального выделенного сервера (например: example.com) и заполните онлайн-форму, которая выглядит так:

wp_installation

Читайте также

Завершив установку WordPress, можно перейти к шифрованию информации сайта. Для этого обратитесь к данной статье.

Tags: , , , , , , ,

Добавить комментарий