@gachkydxvbgd

Как настроить Nginx + nodejs?

Как можно сделать если нету куки connect.sid что бы nginx проксировал nodejs express ( 8080 порт ) и создалась данная кука и далее прогрузилась главная страница сайта ( 80 порт ) , а если есть кука connect.sid то просто загружаем главную ( 80 порт )

А щас у меня сразу проксирует на nodejs

server {
listen 80;
server_name server.ru www.server.ru;

#Configures the publicly served root directory
#Configures the index file to be served
root /var/www/site;
index index.html index.htm;

#These lines create a bypass for certain pathnames

#www.example.com/test.js is now routed to port 3000
#instead of port 80
location / {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_pass http://server.ru:80;
}
}
  • Вопрос задан
  • 3271 просмотр
Решения вопроса 2
viphorizon
@viphorizon
Как то так, к сожалению не разу не читал куки, использовал ответ отсюда.
server {
listen 8080;
server_name site.dev;
location / {
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_http_version 1.1;
if($cookie_connect.sid)
{
proxy_pass http://site.dev:80;
}
if($http_cookie !~ "connect.sid")
{
proxy_pass http://site.dev:8080;
}
}
}
Ответ написан
littleguga
@littleguga
Не стыдно не знать, а стыдно не интересоваться.
Верните прошлый ответ Владимир Мусихин

Там пробел в if надо поставить между скобками

stackoverflow.com/questions/20286369/nginx-unknown...

Вот хорошее объяснение про условия в nginx:
stackoverflow.com/questions/31074618/check-if-cook...
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы