【发布时间】:2018-07-14 01:52:12
【问题描述】:
我有一个运行 Nginx 的 VPS 服务器,我还有一个在端口 8000 上运行的节点应用程序。Nginx 服务器容纳我的 PHP 应用程序,并在默认的网络服务器端口上运行良好。
我有一个指向服务器 ip 的自定义域名。
我已经安装了 let's encrypt 来处理我的 https 流量,它适用于我的 php 应用程序。
我必须在端口 8080 上捕获 https 流量并将请求转发到端口 8000 上的节点应用程序。
我已经尝试了大多数 stackoverflow 的东西。我不知道我做错了什么。
下面是我的 nginx 服务器块的副本。
server {
listen [::]:443 ssl ipv6only=on; # managed by Certbot
listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/repairspots.org/fullchain.pem; # managed$
ssl_certificate_key /etc/letsencrypt/live/repairspots.org/privkey.pem; # manag$
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}
// i need to get this portion right
server {
listen [::]:8080 ssl ipv6only=on; # managed by Certbot
listen 8080 ssl;
server_name 0.0.0.0;
ssl_certificate /etc/letsencrypt/live/example.org/fullchain.pem; # managed$
ssl_certificate_key /etc/letsencrypt/live/example.org/privkey.pem; # manag$
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
error_page 497 https://0.0.0.0:8080$request_uri;
# pass requests to port 8000 where our other node server is running
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://0.0.0.0:8000;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_cache_bypass $http_upgrade;
proxy_redirect off;
}
}
【问题讨论】:
标签: node.js ssl nginx reverse-proxy