server {
listen 12345;
server_name 1.1.1.1;
return 301 https://$host:12345$request_uri;
}
server {
listen 12345ssl;
server_name 1.1.1.1;
ssl_certificate /etc/nginx/mtls/server.crt;
ssl_certificate_key /etc/nginx/mtls/server.key;
ssl_client_certificate /etc/nginx/mtls/ca.crt;
ssl_verify_client optional;
if ($ssl_client_verify != SUCCESS) {
return 444;
}
location / {
proxy_pass http://127.0.0.1:1010;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header X-SSL-Client-DN $ssl_client_s_dn;
}
}
Я уже перепробовал всё, но даже не могу понять как сделать хотя бы редирект на https. Он мне в http выдаёт заглушку nginx, но я хочу делать либо редирект, либо не отдавать вообще ничего 444, а в идеале, вообще таймаут соединения:
400 Bad Request
The plain HTTP request was sent to HTTPS port
nginx