So konfigurieren Sie den Nginx-Client zum Speichern von Cookies

WBOY
Freigeben: 2023-05-28 17:25:25
nach vorne
1675 Leute haben es durchsucht

Frage

Nach der Bereitstellung eines von Vorgängern hinterlassenen Dotnet-Kern-Hintergrunddienstes habe ich den Front-End-Code auf dem Server sorgfältig geändert und die Ajax-Anforderungsadresse in „localhost“ geändert. Anmelde- und Anforderungsdaten sind normal . Ich habe jedoch den Localhost in die IP-Adresse geändert und festgestellt, dass die Anmeldung normal war und das Cookie zurückgegeben wurde. Beim Überprüfen des Anmeldestatus (Senden einer Anfrage an den Hintergrund und Überprüfen des übertragenen Cookies) ist jedoch ein Fehler aufgetreten Ich bekomme 401

Das Frontend dieses Programms, das Backend wurde nicht von mir geschrieben, ich habe die Frontend-Entwicklung gefragt:

So konfigurieren Sie den Nginx-Client zum Speichern von Cookies

# 🎜🎜#Obwohl das Cookie erfolgreich zurückgegeben wurde, wurde das Cookie nicht im nächsten Anforderungsheader übertragen. Es war seltsam, und dann entdeckte ich:

So konfigurieren Sie den Nginx-Client zum Speichern von Cookies

Laut der Eingabeaufforderung möchte der Browser Cookies speichern, aber in Set-Cookie ist Secure eingestellt. wurde blockiert.

So konfigurieren Sie den Nginx-Client zum Speichern von Cookies

Lösung

Dann werde ich Secure entfernen!

Gleichzeitig muss auch samesite=none geändert werden, da samesite=none mit secure verwendet werden muss. Sie können den Wert in strict

Streng ändern Strengstens ist es völlig untersagt, Cookies von Drittanbietern zu senden, unabhängig von den Umständen bei standortübergreifenden Besuchen. Das Cookie wird nur übertragen, wenn die URL der aktuellen Seite mit dem angeforderten Ziel übereinstimmt.

nginx-Einstellungen:

proxy_cookie_flags ~ nosecure samesite=strict;
Nach dem Login kopieren

Lass uns mehr darüber reden

Das Cookie-Attribut secure kann nur unter https aufgerufen werden hier von Migrieren der https-Umgebung zur http-Umgebung (lernen Sie diese umgekehrte unsichere Methode nicht).

Das von mir eingerichtete Nginx ist wie folgt, aber die tatsächliche Verwendung sollte auch für die spezifische Situation berücksichtigt werden:

 	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;
   }
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo konfigurieren Sie den Nginx-Client zum Speichern von Cookies. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage