В следующей статье мы рассмотрим, как мы можем установить WordPress с Nginx на Ubuntu 20.04. Это CMS является одной из наиболее широко используемых систем управления контентом с открытым исходным кодом. Он поддерживает около 60 миллионов веб-сайтов. Он написан на PHP и использует MariaDB / MySQL в качестве базы данных для хранения информации.
В следующих строках мы увидим, как установить WordPress локально с Nginx в Ubuntu 20.04. По этой причине, прежде чем продолжить это будет необходимо иметь установленный программный стек LEMP в Ubuntu 20.04 для начала.
Установите WordPress с Nginx в Ubuntu 20.04
Установить расширения PHP
Следующие расширения необходимы для работы WordPress в Ubuntu 20.04.. Чтобы установить их, нам нужно будет только открыть терминал (Ctrl + Alt + T) и выполнить:
sudo apt update && sudo apt install php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-imagick php-json php-mbstring php-posix php-sockets php-tokenizer
Создайте серверный блок Nginx для WordPress
Мы создадим серверный блок Nginx для установки WordPress. Для этого серверного блока требуется имя домена, номер порта, корень документа, расположение в реестре и т. Д.. В этом примере я собираюсь использовать следующие данные. Пусть каждый пользователь адаптирует их под свои нужды:
- Доменное имя: www.wordpress.local
- Корневой каталог документа: /сайты/www.wordpress.local/public_html/
- Журналы: /сайты/www.wordpress.local/журналы/
Давай начнем создание файла конфигурации серверного блока в каталоге /etc/nginx/conf.d командой:
sudo vim /etc/nginx/conf.d/www.wordpress.local.conf
Внутри файла мы разместим следующий контент:
server { server_name www.wordpress.local; root /sites/www.wordpress.local/public_html/; index index.html index.php; access_log /sites/www.wordpress.local/logs/access.log; error_log /sites/www.wordpress.local/logs/error.log; # No permitir que las páginas se representen en un iframe en dominios externos add_header X-Frame-Options "SAMEORIGIN"; # Prevención MIME add_header X-Content-Type-Options "nosniff"; # Habilitar el filtro de secuencias de comandos entre sitios en los navegadores compatibles add_header X-Xss-Protection "1; mode=block"; # Evitar el acceso a archivos ocultos location ~* /\.(?!well-known\/) { deny all; } # Evitar el acceso a ciertas extensiones de archivo location ~\.(ini|log|conf)$ { deny all; } # Habilitar enlaces permanentes de WordPress location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Сохраняем файл и выходим. А теперь давай создать корневой каталог документов и каталог записей используя команды:
sudo mkdir -p /sites/www.wordpress.local/public_html/ sudo mkdir -p /sites/www.wordpress.local/logs/
Мы продолжаем проверка файлов конфигурации Nginx:
sudo nginx -t
Сообщение, подобное изображенному на предыдущем снимке экрана, подтвердит правильность конфигурации сервера Nginx. В итоге мы перезапускаем сервис:
sudo systemctl restart nginx.service
Создайте базу данных для WordPress
Войдите в MariaDB / MySQL:
sudo mysql -u root -p
то мы создаем базу данных для WordPress:
CREATE DATABASE wordpress;
Следующее будет создать пользователя:
CREATE USER 'wpusuario'@'localhost' IDENTIFIED BY '123password';
Мы продолжаем предоставление разрешения созданному пользователю для доступа к базе данных:
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpusuario'@'localhost';
И мы можем Salir:
quit
Скачать WordPress
Скачиваем последнюю версию WordPress de WordPress.org con Wget:
wget http://wordpress.org/latest.tar.gz
Теперь мы будем извлеките пакет WordPress с командой деготь:
tar -zxvf latest.tar.gz
Следующее будет переместить файлы WordPress в корень документа:
sudo mv wordpress/* /sites/www.wordpress.local/public_html/
Мы продолжаем изменять свойство, чтобы Nginx мог записывать файлы в корень этого документа.:
sudo chown -R www-data:www-data /sites/www.wordpress.local/public_html/ sudo chown -R www-data:www-data /sites/www.wordpress.local/logs/
Теперь мы будем создать запись хоста для домена (в этом примере www.wordpress.local) в файле / Etc / хостов, в случае, если в нашей среде нет DNS-сервера для разрешения имен:
sudo vim /etc/hosts
Внутри файла мы собираемся добавить запись, как показано ниже. Используемый IP-адрес - это мой локальный компьютер.
Установить WordPress
Следуя данным в этом примере, мы будем откройте веб-браузер и посетите URL-адрес:
http://www.wordpress.local
Это приведет нас к Мастер установки WordPress.
Нам придется напишите детали базы данных, чтобы WordPress мог подключиться к ней. Это будут данные созданной ранее базы данных.
Если соединение успешно, мы увидим сообщение об успешном завершении на новом экране. Чтобы продолжить, вам просто нужно нажать на Запускаем установку.
На следующем экране нам нужно будет напишите название сайта, пользователя администратора WordPress, пароль и адрес электронной почты. Мы перейдем к следующему экрану, нажав Установить WordPress.
Если все пойдет хорошо, установка WordPress завершена. Теперь мы можем нажать на Доступ для перехода к администратору WordPress (Backend).
И с этого мы можем приступить к разработке нашего сайта:
Настройте максимальный размер загружаемого файла
По умолчанию PHP не позволяет загружать файлы размером более 2 МБ. Чтобы разрешить загрузку файлов большего размера через веб-интерфейс WordPress, нам нужно будет настроить upload_max_filesize и post_max_size в php.ini..
sudo vim /etc/php/7.4/fpm/php.ini
Здесь мы идем к поиск upload_max_filesize y изменить размер загрузки на 256M, если это то, что вам нужно:
upload_max_filesize = 256M
Мы также поиск post_max_size и мы изменим размер загрузки в соответствии с нашими потребностями:
post_max_size = 256M
Чтобы закончить мы добавим основной модуль client_max_body_size в файле конфигурации сервера Nginx.
sudo vim /etc/nginx/nginx.conf
Директива может быть добавлена в блок HTTP (для всех сайтов), конкретный блок сервера или контекст местоположения.
client_max_body_size 256M;
Сохраняем файл и выходим. В итоге мы перезапускаем сервисы:
sudo systemctl restart php7.4-fpm.service sudo systemctl restart nginx.service
И с этим у нас будет WordPress установлен локально в Ubuntu 20.04.
Не работает 🙁
Привет. В какой момент установка не удалась?
Как настроить Nginx для доступа с внешнего компьютера из той же локальной сети?
При применении указанной конфигурации и попытке входа по имени доступ к Nginx по умолчанию.