#node.js #nginx #proxy
#node.js #nginx #прокси
Вопрос:
У меня есть приложение узла, работающее на порту 8002 с разными подпрограммами, такими как «/ login» или «/ facebook», у меня также есть nginx (версия v1.6.0) и следующая конфигурация:
server {
listen 80;
server_name my-ghost-blog.com ;
client_max_body_size 10M;
location / {
proxy_pass http://localhost:2368/;
proxy_set_header Host $host;
proxy_buffering off;
}
location ~ ^/(sitemap.xml) {
root /var/www/ghost;
}
location ~ ^/(robots.txt) {
root /var/www/ghost;
}
#proxy to a node app running on 8002 port
location ^~ /auth/ {
proxy_pass http://localhost:8002/;
}
}
когда я перехожу к ‘/ auth /’, это работает, но когда я пытаюсь перейти к subroute приложения узла, появляется 404, потому что nginx не знает, как с этим справиться.
есть идеи?
Спасибо
Комментарии:
1. У вас есть что-нибудь запущенное
http://localhost:2368/
? Мне кажется, что вы отправляете маршруты только с/auth
помощью tohttp://localhost:8002/
, а другие —http://localhost:2368/
2. ДА. Ghost работает на этом порту. Но я не знаю, как указать, что эти маршруты внутри ‘/ auth /’ должны управляться localhost: 8002