support 447 Posted February 22, 2019 Report Share Posted February 22, 2019 Ниже пару заметок насчёт общего смысла, как надо настраивать веб-сервер для работы с nodejs, что б при открытии домена в браузере как раз работало наше приложение, как в демке https://cezerin.ru Смысл настройки веб-сервера для работы с NodeJS Пример рабочего конфига ngnix в файле nginx.conf, прицеплен внизу. Именно на этом конфиге работает онлайн-демка https://cezerin.ru Итак... в сравнении с php и веб-сервером, с nodejs всё немного по-другому. По умолчанию в магазине у нас два приложиния: backend - api, который сидит на 3001 порту - http://localhost:3001 frontend - сайт и админка, которые сидят на 3000 порту - http://localhost:3000 и http://localhost:3000/admin Нам надо настроить веб-сервер, что б был правильный разбор адресов при обращении к магазина по названию домена http://магазин.ру Принцип настройки: 1. Все запросы к серверу делаем в папку /public/content т.е. по умолчанию там READMe.md файл. Значит при открытии http://магазин.ру/content/README.md должен открываться README.md 2. API у нас висит на 3001 порту, т.е. localhost:3001 А frontend на 3000, т.е. localhost:3000 Нам надо настроить прокси для веб-сервера. т.е. при открытии 80 порта в браузере http://магазин.ру Нужно настроить что б все веб-запросы к сайту шли на localhost:3000, т.е. на приложение store, на frontend. 3. Все запросы к API идут на http://localhost:3001/api , т.е. на приложение api, которое сидит на 3001 порту. т.е. для запросов api настраиваем прокси, что б при обращении в браузере к http://магазин.ру/api всё шло на http://localhost:3001/api Всё это как раз и реализовано в приложенном рабочем конфиге nginx.conf. Так же надо будет поменять ip 127.0.0.1 на реальное название домена в конфигах в папке /config Убрать везде порты. Просто оставить, к примеру, localhost/api или просто localhost и т.д. Всё, что здесь описано, как раз сделано на примере онлайн-демки https://cezerin.ru т.е. это реальный рабочий пример устаноки, описание принципа запуска cezerin и настройки веб-сервера для работы с cezerin. Установка на виртуальную машину ubuntu 16.04 используя docker: https://github.com/cezerin/cezerin/blob/master/docs/how-to-deploy-a-cezerin-on-ubuntu-16-04.md Установка на виртуальную машину ubuntu 18.04 используя gitgub + docker контейнер для mongodb: https://github.com/cezerin/cezerin/blob/master/docs/how-to-deploy-a-cezerin-on-ubuntu-18-04-1-github.md nginx.conf Link to post Share on other sites
Recommended Posts