#node.js #linux #oracle #nginx
#node.js #linux #Oracle #nginx
Вопрос:
Конфигурация Nginx:
server
{
listen 80;
server_name ****;
listen [::]:80 default_server ipv6only=on;
}
server
{
listen 443;
server_name ****;
location /
{
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:8080/;
proxy_ssl_session_reuse off;
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;
proxy_redirect off;
}
}
server
{
listen 443;
server_name ****;
location /
{
#root /var/www/tite_staging/public/www/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:8080/;
proxy_ssl_session_reuse off;
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;
proxy_redirect off;
}
}
удалено «return 302 https://$host$request_uri;» из http-блока, поскольку это вызывает ошибку ERR_TOO_MANY_REDIRECTS
Могу ли я узнать, в чем проблема? Спасибо. Запуск приложения javascript с узловым сервером
Ответ №1:
server {
listen 80;
# catch all server names here
server_name _;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name tite.rdc.nie.edu.sg;
location / {
proxy_pass http://localhost:8080/;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 443;
server_name staging.tite.rdc.nie.edu.sg;
location / {
proxy_pass http://localhost:8088/; # <--- SEE PORT HERE
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Предположения:
- URLtite.rdc.nie.edu.sg запуск ветви приложения A на сервере A
- URLstaging.tite.rdc.nie.edu.sg запуск ветви приложения B на сервере A
Означает, что вы не можете запускать два разных приложения на одном сервере за одним и тем же портом. Во время запуска приложения вы должны получить сообщение об ошибке, что-то вроде:
Bind address already in use
Также проверьте папку /etc /nginx / config, если она не содержит других (по умолчанию) файлов *.conf
Комментарии:
1. Привет @Facty спасибо за помощь. Он обслуживался везде, где корень определен в основном файле конфигурации nginx (/etc /nginx /nginx.conf), потому что я не определил корень в HTTP-блоке. Используя только http-блок, прослушивающий порт 80 (вкл. root / var /www/….) сделал свое дело