Назад | Перейти на главную страницу

Как отправить безопасные файлы cookie с помощью узла и ProxyPass / ProxyPassReverse (Httpd / Amazon linux)

Я все еще новичок, но я использую образ 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

Затем я просто перестал устанавливать его как безопасный в узле, и, похоже, все работает нормально.