以下是我的情景:
当用户点击http://mypage.sso.com(我的sso端点)时,它将对用户进行身份验证,并使用POST正文中的身份验证令牌向我的站点(https://mypage.com)发出POST请求。
我试图在nginx中读取POST主体并将$response_body
存储在cookie中并启动我的角度应用程序(即index.html)。
我在我的Nginx配置文件(Nginx版本1.11.2)中完成了以下配置
location / {
root /app/UI/dist/public/;
index index.html;
proxy_http_version 1.1;
proxy_set_header Host 127.0.0.1;
proxy_pass $scheme://127.0.0.1:80/auth;
add_header Set-Cookie lcid='$request_body';
error_page 405 =200 $uri;
}
location /auth{
return 200;
}
现在,当用户点击mypage.sso.com时,它会下载一个DMS文件,而不是重定向到我的页面(mypage.com)。但我看到cookie已经使用auth令牌正确设置(取自帖子正文)(我可以通过已打开的mypage.com看到这个)。当我删除
来自我的Nginx conf sso端点的proxy_pass $scheme://127.0.0.1:80/auth;
正确地重定向到mypage.com,但$request_body
为空,因此我的cookie也设置为空值。
我应该做些什么改变才能使用POST正文数据正确设置我的cookie并重定向到mypage.com,并避免下载DMS文件。