WordPress с Nginx, установите эту CMS локально на Ubuntu 20.04

об установке wordpress с nginx

В следующей статье мы рассмотрим, как мы можем установить 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) и выполнить:

установка пакетов php

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

Внутри файла мы разместим следующий контент:

Конфигурационный файл nginx для локального WordPress

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:

проверка файлов конфигурации nginx

sudo nginx -t

Сообщение, подобное изображенному на предыдущем снимке экрана, подтвердит правильность конфигурации сервера Nginx. В итоге мы перезапускаем сервис:

sudo systemctl restart nginx.service

Создайте базу данных для WordPress

создание базы данных для WordPress с помощью nginx

Войдите в 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:

скачать последнюю версию WP

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

Установить WordPress

Следуя данным в этом примере, мы будем откройте веб-браузер и посетите URL-адрес:

выбор языка при установке WP

http://www.wordpress.local

Это приведет нас к Мастер установки WordPress.

запустить мастер установки wp

Нам придется напишите детали базы данных, чтобы WordPress мог подключиться к ней. Это будут данные созданной ранее базы данных.

конфигурация базы данных в установке Wp

Если соединение успешно, мы увидим сообщение об успешном завершении на новом экране. Чтобы продолжить, вам просто нужно нажать на Запускаем установку.

информация о местном сайте WP

На следующем экране нам нужно будет напишите название сайта, пользователя администратора WordPress, пароль и адрес электронной почты. Мы перейдем к следующему экрану, нажав Установить WordPress.

локальный доступ к Wp

Если все пойдет хорошо, установка WordPress завершена. Теперь мы можем нажать на Доступ для перехода к администратору WordPress (Backend).

Бэкэнд WordPress

И с этого мы можем приступить к разработке нашего сайта:

фронтальный wp

Настройте максимальный размер загружаемого файла

По умолчанию 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_files в php.ini

upload_max_filesize = 256M

Мы также поиск post_max_size и мы изменим размер загрузки в соответствии с нашими потребностями:

post_max_size php.ini

post_max_size = 256M

Чтобы закончить мы добавим основной модуль client_max_body_size в файле конфигурации сервера Nginx.

sudo vim /etc/nginx/nginx.conf

Директива может быть добавлена ​​в блок HTTP (для всех сайтов), конкретный блок сервера или контекст местоположения.

директива в nginx.conf

client_max_body_size 256M;

Сохраняем файл и выходим. В итоге мы перезапускаем сервисы:

sudo systemctl restart php7.4-fpm.service

sudo systemctl restart nginx.service

И с этим у нас будет WordPress установлен локально в Ubuntu 20.04.


3 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Анна сказал

    Не работает 🙁

    1.    Дэмиен А. сказал

      Привет. В какой момент установка не удалась?

  2.   Альваро сказал

    Как настроить Nginx для доступа с внешнего компьютера из той же локальной сети?
    При применении указанной конфигурации и попытке входа по имени доступ к Nginx по умолчанию.