如何解决Nginx代理丢失Cookies问题?
- By : Will
- Category : Reverse Proxy
Reverse Proxy
1 前言
一个问题,一篇文章,一出故事。
笔者接到任务需要把Tomcat的其中一个应用号使用Nginx代理,详细要求如下,
上游服务器URL:http://tomcat.cmdschool.org:8080/appname/
反向代理URL:https://appname.cmdschool.org/
然而笔者完成基本的代理配置后,详细如下,
发现代理的项目的用户无法登录,经过日志分析配合程序员的代码调试,确定原因为Cookies丢失。
于是尝试通过“proxy_cookie_path”指令可以解决。
2 最佳实践
2.1 创建反向代理配置文件
vim /etc/nginx/conf.d/appname.cmdschool.org_443.conf
加入如下配置,
server { listen 443 ssl; server_name appname.cmdschool.org; include /etc/nginx/public/ssl_default.conf; location / { rewrite ^/appname/(.*)$ /$1 redirect; proxy_pass http://tomcat.cmdschool.org:8080/appname/; proxy_cookie_path /appname /; #... } }
2.2 重载服务使配置生效
systemctl reload nginx.service systemctl status nginx.service
没有评论