Rumah >Operasi dan penyelenggaraan >Nginx >Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki

Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki

WBOY
WBOYke hadapan
2023-05-28 17:25:251705semak imbas

Masalah

Selepas menggunakan perkhidmatan latar belakang teras dotnet yang ditinggalkan oleh pendahulu, saya mengubah suai kod bahagian hadapan pada pelayan dengan teliti dan menukar alamat permintaan ajax kepada localhost dan data permintaan adalah perkara biasa. Walau bagaimanapun, saya menukar localhost kepada alamat IP dan mendapati bahawa log masuk adalah normal dan kuki telah dikembalikan Walau bagaimanapun, apabila mengesahkan status log masuk (menghantar permintaan ke latar belakang dan mengesahkan kuki yang dibawa), ralat telah dilaporkan kept 401

Bahagian depan dan belakang program ini saya tidak menulis penghujungnya, jadi saya bertanya kepada pembangun bahagian hadapan:

Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki

<.>Walaupun kuki berjaya dikembalikan, pengepala permintaan kuki tidak dibawa dalam permintaan seterusnya. Ia adalah pelik, dan kemudian saya mendapati:

Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki

Menurut gesaan, penyemak imbas ingin menyimpan kuki, tetapi Set-Cookie telah disekat kerana tetapan Secure.

Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki

Penyelesaian

Kemudian saya akan mengalih keluar Secure!

Pada masa yang sama, samesite=tiada juga mesti diubah suai, kerana samesite=tiada mesti digunakan dengan selamat Anda boleh menukar nilai kepada ketat

Peraturan yang ketat adalah yang paling ketat, dan ia. adalah dilarang sama sekali untuk menghantar kuki pihak ketiga tanpa mengira keadaan semasa mengakses merentasi tapak. Kuki hanya akan dibawa jika URL halaman semasa sepadan dengan sasaran yang diminta.

Tetapan dalam nginx:

proxy_cookie_flags ~ nosecure samesite=strict;

Mari kita bincangkan semula

Atribut cookie selamat hanya boleh diakses di bawah https saya berhijrah dari persekitaran https ke http persekitaran (Jangan pelajari kaedah tidak selamat terbalik ini).

Nginx yang saya sediakan adalah seperti berikut, tetapi penggunaan sebenar mesti dipertimbangkan untuk situasi tertentu:

 	location /rf/ {
        proxy_pass  http://localhost:5001/;
	    proxy_set_header Host $host;
	    proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Real-PORT $remote_port;
      
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

	    proxy_cookie_path  / /;
	    proxy_set_header   Cookie $http_cookie;
 	    proxy_cookie_flags ~ nosecure samesite=strict;
   }

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi klien nginx untuk menyimpan kuki. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam