WordPress — самая популярная в мире платформа для ведения блогов и CMS с открытым исходным кодом, на которой сегодня работает четверть всех веб-сайтов в Интернете. Он основан на PHP и MySQL и содержит массу функций, которые можно расширить с помощью бесплатных и платных плагинов и тем. WordPress — это самый простой способ создать свой интернет-магазин, сайт или блог.
В этом руководстве описывается, как установить WordPress на CentOS 7. Это довольно простой процесс, который занимает менее десяти минут.
Мы будем использовать стек LEMP с Nginx в качестве веб-сервера, сертификатом SSL, последней версией PHP 7.2 и MySQL / MariaDB в качестве сервера базы данных.
Содержание
Подготовка
Прежде чем продолжить изучение этого руководства, убедитесь, что выполнены следующие предварительные условия:
- Укажите доменное имя, указывающее на общедоступный IP-адрес вашего сервера. В этом руководстве мы будем использовать
example.com
. - Вы вошли в систему как пользователь с привилегиями sudo .
- Nginx устанавливается, следуя этим инструкциям .
- У вас установлен сертификат SSL для вашего домена. Вы можете сгенерировать бесплатный SSL-сертификат Let's Encrypt, следуя этим инструкциям .
Создание базы данных MySQL
WordPress хранит свои данные и конфигурацию в базе данных MySQL. Первым шагом является создание базы данных MySQL, учетной записи пользователя MySQL и предоставление доступа к базе данных .
Если на вашем сервере Ubuntu еще не установлены MySQL или MariaDB, вы можете установить его, следуя одной из следующих инструкций:
Войдите в оболочку MySQL, выполнив следующую команду:
mysql -u root -p
Из оболочки MySQL выполните следующие операторы SQL, чтобы создать базу данных с именем wordpress
, пользователем с именем wordpressuser
и предоставить пользователю все необходимые разрешения:
CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON wordpress.* TO 'wordpressuser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;
Установка PHP 7.2
CentOS 7 поставляется с PHP версии 5.4. Рекомендуемая версия PHP для WordPress — PHP 7.2.
Чтобы установить PHP и все необходимые расширения PHP, выполните следующие команды:
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php72
sudo yum install php-cli php-fpm php-mysql php-json php-opcache php-mbstring php-xml php-gd php-curl
Мы установили PHP FPM, потому что мы будем использовать Nginx в качестве веб-сервера.
По умолчанию PHP FPM запускается как пользовательский apache
на порту 9000. Мы изменим пользователя на nginx
и переключимся с сокета TCP на сокет Unix. Для этого откройте файл /etc/php-fpm.d/www.conf
отредактируйте строки, выделенные желтым:
...
user = nginx
...
group = nginx
...
listen = /run/php-fpm/www.sock
...
listen.owner = nginx
listen.group = nginx
Убедитесь, что каталог /var/lib/php
имеет правильного владельца, используя следующую команду chown :
sudo chown -R root:nginx /var/lib/php
После внесения изменений включите и запустите службу PHP FPM:
sudo systemctl enable php-fpm
sudo systemctl start php-fpm
Скачивание WordPress
Перед загрузкой архива WordPress сначала создайте каталог, в который мы поместим файлы WordPress:
sudo mkdir -p /var/www/html/example.com
Следующим шагом будет загрузка последней версии WordPress со страницы загрузки WordPress с помощью следующей команды wget :
cd /tmp
wget https://wordpress.org/latest.tar.gz
Когда загрузка будет завершена, извлеките архив WordPress и переместите файлы в корневой каталог документов домена:
tar xf latest.tar.gz
sudo mv /tmp/wordpress/* /var/www/html/example.com/
Установите правильные разрешения, чтобы веб-сервер мог иметь полный доступ к файлам и каталогам сайта:
sudo chown -R nginx: /var/www/html/example.com
Настройка Nginx
К настоящему времени у вас уже должен быть установлен Nginx с сертификатом SSL в вашей системе, если нет, проверьте предварительные требования для этого руководства.
Чтобы создать новый серверный блок для нашего экземпляра WordPress, мы будем использовать рецепт Nginx с официального сайта Nginx.
Откройте текстовый редактор и создайте новый серверный блок nginx :
sudo nano /etc/nginx/conf.d/example.com.conf
Добавьте следующие строки:
# Redirect HTTP -> HTTPS
server {
listen 80;
server_name www.example.com example.com;
include snippets/letsencrypt.conf;
return 301 https://example.com$request_uri;
}
# Redirect WWW -> NON WWW
server {
listen 443 ssl http2;
server_name www.example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
return 301 https://example.com$request_uri;
}
server {
listen 443 ssl http2;
server_name example.com;
root /var/www/html/example.com;
index index.php;
# SSL parameters
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
include snippets/ssl.conf;
include snippets/letsencrypt.conf;
# log files
access_log /var/log/nginx/example.com.access.log;
error_log /var/log/nginx/example.com.error.log;
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ .php$ {
try_files $uri =404;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~* .(js|css|png|jpg|jpeg|gif|ico|svg)$ {
expires max;
log_not_found off;
}
}
Перед перезапуском сервиса Nginx проверьте конфигурацию, чтобы убедиться в отсутствии синтаксических ошибок:
sudo nginx -t
Если ошибок нет, результат должен выглядеть так:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
и вы можете перезапустить Nginx , набрав:
sudo systemctl restart nginx
Завершение установки WordPress
Теперь, когда WordPress загружен и настройка сервера завершена, вы можете завершить установку через веб-интерфейс.
Откройте браузер, введите свой домен, и появится экран, подобный следующему:
Выберите язык, который вы хотите использовать, и нажмите кнопку « Continue
.
Затем вы увидите следующую информационную страницу, нажмите Let's go!
кнопка.
На следующем экране мастер настройки попросит вас ввести данные подключения к базе данных. Введите данные пользователя MySQL и базы данных, которые вы создали ранее.
Запустите установку WordPress, нажав кнопку « Run the Installation
.
На следующем шаге вам нужно будет ввести имя для вашего сайта WordPress и выбрать имя пользователя (в целях безопасности не используйте «admin»).
Программа установки автоматически сгенерирует для вас надежный пароль. Не забудьте сохранить этот пароль. Вы также можете установить пароль самостоятельно.
Введите свой адрес электронной почты и выберите, хотите ли вы, чтобы поисковые системы не индексировали сайт (не рекомендуется).
Щелкните Install WordPress
и после завершения установки вы попадете на страницу, информирующую вас о том, что WordPress установлен.
Чтобы получить доступ к странице входа в WordPress, нажмите кнопку « Log in
.
Введите ваше имя пользователя и пароль.
Вы будете перенаправлены на панель администрирования WordPress.
Отсюда вы можете приступить к настройке вашей установки WordPress, установив новые темы и плагины.
Выводы
Поздравляем, вы успешно установили WordPress с Nginx на свой сервер CentOS 7.Первые шаги с WordPress — хорошая отправная точка, чтобы узнать больше о том, как сделать свой новый сайт WordPress своим.
Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.