158  /  274

Конфигурация Nginx

Просмотров: 34220
Дата последнего изменения: 07.06.2023
Роберт Басыров
Сложность урока:
2 уровень - несложные понятия и действия, но не расслабляйтесь.
1
2
3
4
5

Рабочий каталог для сайта - /var/www/html/bx-site. Пользователь для web окружения - nginx, группа apache.

Конфигурация Nginx сервера:

/etc/nginx/nginx.conf                                       # основной конфигурационный файл
            |_conf.d/upstreams.conf                         # конфигурация для upstream серверов: apache && push-server
            |_conf.d/maps-composite_settings.conf           # параменные используемые для кеша
            |_conf.d/maps.conf                              # дополнительные переменные
            |_conf.d/http-add_header.conf                   # CORS заголовки
            |_sites-available/*.conf                        # подключаем сайты
                              |_default.conf                # сайт по умолчанию (настраиваем только 80 порт)
                                    |_conf.d/bx_temp.conf   # конфигурация BX_TEMPORARY_FILES_DIRECTORY
                                    |_conf.d/bitrix.conf    # дефолтная конфигурация сайта
                              |_rtc.conf                    # проксирование запросов на push-server (публикация)

Дефолтная конфигурация сайта:

conf.d/bitrix.conf                                          # основный блоки со включенным по умолчанию кешем в файлах
        |_conf.d/bitrix_general.conf                        # отдача статики, быстрая отдача для внешних хранилищ и прочее
                |_conf.d/errors.conf                        # обработка ошибок
                |_conf.d/im_subscrider.conf                 # проксирование запросов на push-server (получение)
                |_conf.d/bitrix_block.conf                  # блокировки по умолчанию

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

Все конфигурационные файлы можно скачать в архиве.

su -
rsync -av debian/nginx/ /etc/nginx/

В сервисе используются имена для проксирования на определенные службы:

  • httpd - проксирование запросов на apache,
  • push - проксирование запросов на push-server.

Чтобы заработала конфигурация, необходимо прописать службы в локальных адресах. Если сервисы расположены на другом хосте, то укажите здесь правильный адрес.

echo "127.0.0.1 push httpd" >> /etc/hosts

По умолчанию в Debian Apache2 сервер использует 80 порт и поставлен на автозапуск. Поэтому перед запуском nginx сервера, на время выключите Apache2 (на данный момент он еще не настроен). Остановите Apache2:

systemctl stop apache2

Запустите Nginx:

systemctl --now enable nginx

9
Курсы разработаны в компании «1С-Битрикс»

Если вы нашли неточность в тексте, непонятное объяснение, пожалуйста, сообщите нам об этом в комментариях.
Развернуть комментарии