Скорость загрузки страниц в WordPress может быть очень медленным, особенно если ваш сайт имеет много посетителей и / или вы используете много тяжелых плагинов. Кэширование, это лучший способ улучшить скорость загрузки веб – сайта WordPress и общий опыт пользователей. В этом руководстве мы будем покажем вам процесс установки WordPress на Ubuntu 14.04. с Nginx, MariaBD и PHP FPM и настроим кэш Redis для повышения производительности WordPress. Это должно работать на других системах на основе Linux, но была испытана и написана для Ubuntu 14.04.
Обновите систему и установите необходимые пакеты.
apt-get -y update && apt-get -y upgrade apt-get install software-properties-common curl git
Установите последнюю стабильную версию Redis
apt-add-repository ppa:chris-lea/redis-server apt-get update apt-get install redis-server
Установить MariaDB 10,0
apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db add-apt-repository 'deb http://ftp.osuosl.org/pub/mariadb/repo/10.0/ubuntu trusty main' apt-get update apt-get install mariadb-server
Когда установка завершена, выполните следующую команду, чтобы защитить установку:
mysql_secure_installation
Далее, нам необходимо создать базу данных для нашего WordPress экземпляра.
mysql -uroot -p MariaDB [(none)]> CREATE DATABASE my_db; MariaDB [(none)]> GRANT ALL PRIVILEGES ON wpdb.* TO 'my_user'@'localhost' IDENTIFIED BY 'my_user_passwd'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> \q
Установка PHP и Nginx
Последняя версия Nginx 1.6.2 не доступна через репозитории Ubuntu по умолчанию, так что мы добавим “nginx/stable” PPA, обновите систему и установите пакет Nginx.
add-apt-repository ppa:nginx/stable apt-get update apt-get install nginx php5-fpm php-cli php5-gd php5-mysqlnd
Конфигурация Nginx
Создайте новый блок сервера Nginx со следующим содержанием:
nano /etc/nginx/sites-available/example.ru
server { server_name example.ru; listen 80; root /var/www/example.ru/public_html; access_log /var/www/example.ru/logs/access.log; error_log /var/www/example.ru/logs/error.log; index index.php; location / { try_files $uri $uri/ /index.php?q=$uri&$args; } location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ { access_log off; expires max; } location ~ /\.ht { deny all; } location ~ \.php$ { fastcgi_index index.php; fastcgi_keep_conn on; include /etc/nginx/fastcgi_params; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Активируйте блок сервера путем создания символической ссылки:
ln -s /etc/nginx/sites-available/example.ru /etc/nginx/sites-enabled/example.ru
Проверьте конфигурацию Nginx и перезапустите сервер, выполнив следующие команды:
nginx -t /etc/init.d/nginx restart
Установите WordPress
Создайте новые каталоги для вашего WordPress сайта:
mkdir -p /var/www/example.ru/{public_html,logs}
Загрузите и извлеките пакет WordPress:
wget -q -O - http://wordpress.org/latest.tar.gz | tar -xzf - --strip 1 -C /var/www/example.ru/public_html
Установите правильные разрешения:
chown www-data: -R /var/www/example.ru/public_html
Наконец запустите скрипт установки WordPress путем доступа к URL в веб-браузере. http://example.ru/
Redis Cache
Клонирование репозитория GitHub:
git clone https://github.com/BenjaminAdams/wp-redis-cache.git /tmp/wp-redis-cache
Переместите index.php и index-wp-redis.php в каталог WordPress.
mv /tmp/wp-redis-cache/{index-wp-redis.php,index.php} /var/www/example.ru/public_html/
Откройте файл index-wp-redis.php и измените $ websiteIp на IP-адрес сервера, и $ secret_string на случайную строку.
Переместите папку wp-redis-cache в каталог плагинов WordPress и активируйте плагин через меню ‘Плагины’ в WordPress.
mv /tmp/wp-redis-cache/wp-redis-cache /var/www/example.ru/public_html/wp-content/plugins/
Обратите внимание, что иногда при обновлении, WordPress будет перезаписывать файл index.php и вам придется вручную изменить index.php:
<?php require('index-wp-redis.php');
Для получения дополнительной информации о wp-redis-cache, пожалуйста, проверьте файл README.md.