Saya menggunakan nginx sebagai proxy terbalik untuk melayani situs https-only. Jadi saya ingin cookie untuk situs ini ditandai sebagai aman. Tetapi server backend adalah http satu sehingga tidak akan mengatur bendera aman untuk cookie-nya. Bagaimana saya bisa memodifikasi header Set-Cookie sebagai tanggapan untuk menambahkan bendera yang aman?
nginx
reverse-proxy
Tianyi Cui
sumber
sumber
proxy_cookie_secure
: trac.nginx.org/nginx/ticket/368 Namun itu belum diterapkan (dan masalahnya sudah tua).Jawaban:
Anda mungkin bisa mendapatkan proxy nginx Anda memodifikasi cookie yang dibuat oleh backend dan mengatur bendera aman - untuk inspirasi lihat Bagaimana menulis ulang bagian domain Set-Cookie di proxy reverse nginx? .
Namun saya membayangkan bahwa mendapatkan apa pun yang membuat cookie di backend untuk mengatur bendera aman akan menjadi solusi yang lebih baik. Bagaimana Anda melakukannya adalah cerita lain (atau pertanyaan :).
sumber
X-Forwarded-Proto
tajuk dan memastikan itu ditafsirkan oleh aplikasi Anda. Ini adalah teknik umum dan juga memungkinkan aplikasi campuran http / https untuk bereaksi dengan benar berdasarkan protokol.Saya menggunakan kode konfigurasi nginx berikut:
Alih-alih regex untuk membuat ini dinamis Anda tentu saja dapat menggunakan FQDN.
sumber
Cookie
header.Ini membantu saya:
Lihat http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_cookie_path
sumber