nginx - nginx 在 443 上监听正常,直到 80 被重定向到它
问题描述
我已经用独角兽设置了 nginx,它的行为很奇怪。我尝试对在我的另一台服务器上工作的重定向使用相同的配置,但在一台服务器上它不起作用。这工作得很好,它在 443 上收听
upstream app {
# Path to Unicorn SOCK file, as defined previously
server unix:/home/gittool/myapp/shared/sockets/unicorn.sock fail_timeout=0;
}
server {
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name app.domain.com;
root /home/gittool/myapp/public;
try_files $uri/index.html $uri @app;
location @app {
proxy_pass http://app;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
}
error_page 500 502 503 504 /500.html;
client_max_body_size 4G;
keepalive_timeout 10;
}
如果我在服务器部分上方添加这部分以进行 80 重定向,则即使 80 也不会重定向到 https,而且 https 也会停止工作并显示重定向错误
server {
listen 80;
server_name app.domain.com;
return 301 https://app.domain.com$request_uri;
}
任何线索我做错了什么?我在其他可以正常工作的服务器上使用相同的配置
解决方案
推荐阅读
- python - 为什么这两个相同的列表表现不同?
- jquery - 在 ajax 生成的内容中加载 JS 文件
- perl - Perl 中的取消引用哈希在 Docker 容器中不起作用
- c# - .NET Core EF - 从自定义 DbCommand 获取日志记录输出
- c# - 如何解决以下代码中的错误?
- html - 使用 shiny::includeHTML() 时无法呈现 blogdown 站点
- mysql - 如何在 MySQL 中找到当时的最低值(圈记录)?
- python - 将输入从 React.js/Electron 应用程序传递到 Python 脚本?
- d3.js - Pixi.js vs Konva.js vs D3.js
- python - TensorFlow 在 Jupyter 笔记本中导入时停用 Python