我正在运行一个带有 nodejs 应用程序的 nodejs 应用程序,一个服务器侦听端口 3000。我使用 nginx 作为反向代理,它也处理 ssl。下面列出了配置(在阅读了几个教程和论坛帖子后,我认为它非常标准)。一切都按预期工作,除了我仍然能够在“ http://example.com:3000 ”下访问该应用程序。这是否意味着我需要添加另一个服务器侦听端口 3000 以重定向到 https?这可能意味着我到目前为止阅读的教程有些不完整,或者我忽略了一些基本的东西。谁能帮我弄清楚它是什么?
# app server upstream
upstream app {
server 127.0.0.1:3000;
}
# default http server. Redirect to https server
server {
listen 80;
server_name www.example.com example.com;
return 301 https://example.com$request_uri;
}
# https server
server {
listen 443;
server_name www.example.com example.com;
ssl on;
ssl_certificate ssl.crt;
ssl_certificate_key ssl.key;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers "HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES";
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://app;
proxy_http_version 1.1;
proxy_set_header …Run Code Online (Sandbox Code Playgroud)