#node.js #nginx
#node.js #nginx
Вопрос:
Я пытаюсь использовать nginx для подключения веб-сайта, размещенного на порту 8080, к домену exemple1.com и еще один на порту 8081, который я хочу перенаправить на домен exemple2.com . В файле /etc /nginx/sites-available/default я запустил этот код:
location ~/example1/ {
proxy_pass http://example1.com;
}
location ~/example2/ {
proxy_pass http://example2.com;
}
но я не смог заставить это работать. Я запускаю 2 сервера nodejs на портах, о которых я говорил (порт 8080 и 8081).
Что я делаю не так и как «исправить»
это?
Ответ №1:
Поскольку нижестоящий сервер приложений работает на разных портах ( listen
), чем входящие, вам необходимо указать порты в proxy_pass. Так что я думаю
listen 8080;
location ~/example1/ {
proxy_pass http://example1.com:8080;
}
location ~/example2/ {
proxy_pass http://example2.com:8081;
}
Комментарии:
1. но когда я выполняю sudo nginx -t, я получаю следующее: nginx: [emerg] директива «слушать» здесь не разрешена в / etc /nginx /sites-enabled /default:20 nginx: файл конфигурации /etc /nginx /nginx.conf сбой теста
2. @FlorinBaciu вы создаете файл .conf в /etc /nginx /conf.d и можете иметь
server { listen ... }
внутри.