
Oleg
22.04.2017
11:39:28

Konstantin
22.04.2017
11:39:44
открой в браузере express
работает хоть?

MadMax
22.04.2017
11:40:20
из внехи не зайдешь туда

Google

MadMax
22.04.2017
11:40:26
Там роутер стоит

Oleg
22.04.2017
11:40:33

MadMax
22.04.2017
11:40:33
надо будет октрывать 4200 порт

Konstantin
22.04.2017
11:40:45
так локально или из внехи? )

MadMax
22.04.2017
11:40:51
Погодите
Все работает на внешнем сервере
Но получается, что ангуляр подключается к серверу то локально

Konstantin
22.04.2017
11:41:18
это ты как будто открываешь в браузере localhost:4200
ну тогда апи должен быть за nginx тоже
а не Localhost
браузер у тебя локально ищет localhost:4200
Location /api { proxy_pass http://localhost:4200; }
так будет

Google

Konstantin
22.04.2017
11:43:26
и уже используешь в коде адрес апи remote_host:80

MadMax
22.04.2017
11:44:11
Щас попробую... пока это не понятно все)

Oleg
22.04.2017
11:44:32
Погодите
кстати, ты код ноды на чем изначально разрабатывал на винде или линуксе?

MadMax
22.04.2017
11:44:40
linux

Konstantin
22.04.2017
11:44:49
а в чём отличие?

MadMax
22.04.2017
11:44:59
не знаю

Oleg
22.04.2017
11:45:07
linux
это хорошо, а то есть много интересных ошибок из-за пересоса
а в чём отличие?
функции для работы с путями немного по иному работают и глобальные переменные другие

Konstantin
22.04.2017
11:46:01
что-то интересное

Oleg
22.04.2017
11:47:16
process.cmd() возвращает разные пути в линуксе и винде

Konstantin
22.04.2017
11:48:45
апач как минимум жирный для этого, да и не так удобно-красиво

Oleg
22.04.2017
11:50:08

MadMax
22.04.2017
11:50:20
ребята, еще такой вопрос

Konstantin
22.04.2017
11:50:27
у тебя 2 location должно быть,
location / { root /var/www/angular;}
location /api {proxy_pass http://localhost:4200;}

MadMax
22.04.2017
11:50:31
У меня на машине локальной, сервер запускается как
node app.js
а там почему как
nodejs.app.js
при
node app.js
просто без ошибок как будто стопится

Konstantin
22.04.2017
11:51:51
express с 0 писал app или генератор?

MadMax
22.04.2017
11:51:59
с нуля

Google

MadMax
22.04.2017
11:52:02
там фигня

Konstantin
22.04.2017
11:52:08
вывод сделай

MadMax
22.04.2017
11:52:14
Всего 3 строчки

Konstantin
22.04.2017
11:52:14
для отладки

MadMax
22.04.2017
11:52:22
Я сделал morgan логгер

Konstantin
22.04.2017
11:52:29
а, ок

MadMax
22.04.2017
11:52:37
и при app.listen() я сделал консоль лог который грит что server start

Konstantin
22.04.2017
11:52:52
угу, и на сервере он не говорит?

MadMax
22.04.2017
11:52:55
так вот при nodejs app.js надпись выходит
Что сервер мол раннинг
Хммм....
Странно

MadMax
22.04.2017
11:53:30
Сейчас через коллег, которые в офисе, по тим виверу зашел

Konstantin
22.04.2017
11:53:32
а что странного?

MadMax
22.04.2017
11:53:36
Сам открыл на модеме порт 3001
переписал ноду на порт 3001
захожу по ip:3001
Не удается получить доступ

Konstantin
22.04.2017
11:54:44
http://www.codingtricks.biz/run-nodejs-application-apache/ вот тебе пример апача+express

Google

Konstantin
22.04.2017
11:55:14
Ноду так проксируй
ssh есть? telnet localhost 3001 ?

MadMax
22.04.2017
11:57:07
именно по 3001 порту

Konstantin
22.04.2017
11:58:05
ну да, вроде ок. делай proxy_pass и радуйся

MadMax
22.04.2017
11:58:21
Все так же как там написать
Только вместо 8080 сделать 3001?

Konstantin
22.04.2017
11:58:37
не нужно пробрасывать порты и мучаться. ещё не понятно что там с firewall
ну по идее должно хватить одной строчки
ProxyPass /api http://localhost:3001/

Admin
ERROR: S client not available

Konstantin
22.04.2017
12:01:02
и в коде адрес апи сервера смени на новый

MadMax
22.04.2017
12:01:26
А в коде получится
ip/api
?

Konstantin
22.04.2017
12:02:29
да

MadMax
22.04.2017
12:02:50
Сейчас апачь ребутну

Konstantin
22.04.2017
12:03:03
graceful используй

MadMax
22.04.2017
12:03:05
и отпишусь

Konstantin
22.04.2017
12:03:21
/etc/init.d/httpd graceful
1127 - typo

Google

MadMax
22.04.2017
12:06:46
Чет не получилось

Konstantin
22.04.2017
12:07:36
ip/api не открывает?

MadMax
22.04.2017
12:07:43
захожу по адрессу /api выдают notFound

Konstantin
22.04.2017
12:08:31
я так понимаю express выдаёт, путь передаётся

MadMax
22.04.2017
12:09:06
в экспрессе app.get('/') должен выдать Hello World
res.send('hello world')

Konstantin
22.04.2017
12:09:34
да, а до экспресса доходит /api вместо /
попробуй добавить слэш к прокси
http://127.0.0.1:3001/

MadMax
22.04.2017
12:10:11

Konstantin
22.04.2017
12:10:50
attemt)
не, код не трогай, вопрос в апаче

MadMax
22.04.2017
12:11:06
Да блин, этот nano

Konstantin
22.04.2017
12:15:27
ну что?

MadMax
22.04.2017
12:15:49
Не, ничего, все так же...
Щас думаю с офиса все уедут

Konstantin
22.04.2017
12:16:27
добавил слеш в конец?
вернул app.get('/') ?

MadMax
22.04.2017
12:16:56
нет
оставил /api
Вернуть надо?*

Konstantin
22.04.2017
12:17:16

Dmitrii
22.04.2017
12:17:17
вопрос по поводу построение архитектуры API.
К примеру есть задача, построить REST сервис, плюс пару ботов(telegram, facebook), плюс возможно потом graphql сервис.
Так вот, чтобы не писать одну и ту же бизнес логику 4 раза, логично поместить ее например всю на REST сервис, а graphql и ботов уже строить по HTTP, по верх нашего реста и это вполне логично, особенно если наши сервисы могут быть реализованны на разных стеках.
Но предположим мы решили использовать один единственный nodejs стэк, и теоретически для того чтобы избежать множества http запросов, можно написать наше API как JS либу, а REST, graphQl и ботов, писать уже поверх этой либы, как небольшие обертки.
Насколько вообще оправдан такой подход и могут ли быть подводные камни?

MadMax
22.04.2017
12:18:10
Вернул)