Я все еще новичок, но я использую образ Amazon linux и httpd для шифрования и дешифрования SSL-запросов. Затем я проксирую эти сообщения в приложение NodeJS, работающее на порту 3001. Для этого у меня есть следующее в моем /etc/httpd/conf.d/ssl.conf
<VirtualHost _default_:443>
...
ProxyPreserveHost On
ProxyPass / http://*IP*:3001/
ProxyPassReverse / http://*IP*:3001/
</VirtualHost>
Публичный сайт отлично работает. Однако, когда я пытаюсь установить безопасный файл cookie, используя следующее ...
Ошибка: не удается отправить безопасный файл cookie через незашифрованное соединение.
Я установил свой файл cookie в node вот так ...
const CALLBACK = function(ctx, next) {
...
ctx.cookies.set(
COOKIE_NAME,
response.data.id_token,
{
secure: true,
domain: COOKIE_DOMAIN
},
);
}
Я также пробовал добавить это в ssl.conf ...
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
Но это тоже не помогло, у кого-нибудь есть идеи, как я могу заставить это работать?
Я нашел это в вопросе, и у меня это сработало (хотя сейчас я не могу найти вопрос) ...
/etc/httpd/conf.d/ssl.conf
...
Header edit Set-Cookie ^(.*)$ $1;Secure
Затем я просто перестал устанавливать его как безопасный в узле, и, похоже, все работает нормально.