Я пытаюсь настроить свой сервер NGINX как для веб-сайта, так и для приложения nodejs.
У меня есть два субдомена, указывающих правильно на мой сервер, оба на один и тот же IP.
one.mydomain.com (main site) --> 123.456.789
two.mydomain.com (NODE App) --> 123.456.789
Я уже настроил свой веб-сайт и мое приложение nodejs, чтобы я мог связаться с ними обоими.
Моя конфигурация по умолчанию
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
}
моя конфигурация one.mysite.com:
server {
listen 80;
listen [::]:80;
root /var/www/html/one.mysite.com;
index index.html;
server_name one.mysite.com;
location / {
add_header 'Access-Control-Allow-Origin' *;
try_files $uri $uri/ /index.html?$query_string;
}
}
и мой two.mysite.com (приложение-узел):
server {
listen 80;
listen [::]:80;
root /var/www/html/two.mysite.com;
index index.html;
server_name two.mysite.com;
location / {
proxy_pass http://localhost:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
add_header 'Access-Control-Allow-Origin' *;
# try_files $uri $uri/ =404;
}
}
Проблема в том, что, учитывая, что приложение NODE прослушивает порт 8080
, я не могу понять, как избежать посещения one.mydomain.com:8080
и доступа к приложению NODE js.
Как мне этого достичь? Есть ли способ сказать NGINX, чтобы заблокировать посещение one.mydomain.com
через порт 8080
?
Спасибо