2

Ich versuche HTTPS für meine Website zu arbeiten, aber ich bekomme für alle Postanforderungen. Ich habe die form_authenticity_param und form_authenticity_token geloggt und sie sind tatsächlich anders.Rails InvalidAuthenticityToken mit HTTPS + ELB

Das SSL wird im Elastic Load Balancer aufgelöst, und eine Nicht-SSL-Anforderung wird an die Webanwendung gesendet. Das erwartete CSRF-Token wird in der Cookie-basierten Sitzung gespeichert, sodass die Sitzungen für HTTP und HTTPS unterschiedliche Tokens zu erwarten scheinen. Wenn HTTP auf der Site verwendet wird, funktionieren die Post-/Put-Anforderungen einwandfrei.

Ich habe auf dieses Problem für ein bisschen festgefahren. Jeder Rat wäre hilfreich

+0

Haben Sie dieses Problem beheben? – Bastiano

+0

Ist dein Problem mit 'devise/sign_in' oder mit irgendeiner anderen Form? –

Antwort

1

Ich habe das gleiche Problem, aber es ist nicht Schienen.

fixiert ich das Problem durch proxy_set_header X-Forwarded-Proto https; in meinem nginx.config hinzufügen

location @videos { 
    proxy_pass http://videos; 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
    proxy_set_header X-Forwarded-Proto https; 
    proxy_set_header Host $http_host; 
    proxy_redirect off; 
    } 
Verwandte Themen