自 2 天起,我们的用户在尝试登录我们的服务时收到以下警告:
英文版:
您将要提交的信息不安全
由于此网站使用的连接不完全安全,您的信息将会被其他人看到。
仍然发送 返回
这是我们使用的 nginx 中的设置,过去 3 年一直运行良好,没有任何问题。它仍然有效,但在 Chrome 上会产生警告。
events {
}
http {
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;
}
}
server {
listen 443;
server_name server.example.com;
client_max_body_size 100M;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_certificate /etc/certs/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/certs/privkey.pem; # managed by Certbot
location /ErrorPages/ {
alias /etc/nginx/ErrorPages/;
internal;
}
location / {
proxy_pass http://shinyproxy:4000; ### Übernahme der servicenamen aus Docker-compose
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 600s;
proxy_redirect off;
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-Protocol $scheme;
proxy_set_header X-Forwarded-Proto https;
}
location /api/ {
include uwsgi_params;
uwsgi_pass flask:8080;
}
location /auth/ {
proxy_pass https://keycloak:8443; ### Übernahme der servicenamen aus Docker-compose
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 600s;
proxy_redirect off;
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;
proxy_set_header X-Forwarded-Proto https;
}
}
server {
if ($host = server.example.com) {
return 301 https://$host$request_uri;
} # managed by Certbot
listen 80 ;
listen [::]:80 ;
server_name server.example.com;
return 404; # managed by Certbot
}
}
我找到了这个帖子: https://bugs.chromium.org/p/chromium/issues/detail?id=1158169#c49
这似乎解释了这一点。我对 nginx 的了解只是相当基础,但有人能在这里提出一种解决方法吗?
答案1
此警告是 Chrome 86 中的新警告,当您的 Web 应用程序尝试通过 HTTP 而不是 HTTPS 提交表单时(或者,正如您链接到的错误所提到的,使用 HTTP 重定向响应此类表单提交)时,就会出现此警告。检查您的 Web 应用程序的 HTML 表单,确保它发布到 HTTPS URL,而不是 HTTP URL,并且任何重定向都是到 HTTPS URL。