Мой сайт - example.com (например)
Это мой конфиг nginx в dockerfile.
server {
listen 80;
server_name example.com;
location / {
rewrite ^ https://$host:7000$request_uri? permanent;
}
}
server {
listen 443 ssl;
server_name example.com;
gzip on;
gzip_min_length 1000;
gzip_types text/plain text/xml application/javascript text/css;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
root /usr/share/nginx/html;
location / {
add_header Cache-Control "no-store";
try_files $uri $uri/index.html /index.html;
}
location ~ \.(?!html) {
add_header Cache-Control "public, max-age=2678400";
try_files $uri =404;
}
}
Теперь мой докер-контейнер работает на хост-порту 7000 и на порте 80 контейнера.
Дело в том, что если мой файл cookie удален и я пытаюсь получить доступ к example.com:7000, я получаю сообщение «Простой HTTP-запрос был отправлен на HTTPS порт 400, неправильный запрос». но если я пытаюсь получить доступ к https://example.com:7000,, я перехожу на нужную страницу с активированным ssl. почему не переписать работу? Я также попытался удалить порт 7000 при перезаписи, но все равно безуспешно.