免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3713 | 回复: 4

[Web] 使用nginx反向代理后不能登录后台 [复制链接]

论坛徽章:
0
发表于 2014-11-10 18:59 |显示全部楼层
一台服务器安装了Apache+php+nginx,
apache里面配置了一个A网站,监听8080端口
nginx配置反向代理指向A网站,监听80端口
访问A网站的后台通过 http://www.a.com/admin
现在的问题是不能登录后台,每次登录就会跳转到主页。
而直接访问Apache监听的端口登录后台是正常的。
怀疑是nginx反向代理的session保持问题,请高手指点!

nginx是编译安装的,编译参数如下:
./configure --prefix=/usr/local/nginx --user=www --group=www --sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid \
--with-http_stub_status_module --with-http_ssl_module \
--with-pcre=/home/w/pcre-8.35 --with-zlib=/home/w/zlib-1.2.8 --with-openssl=/home/w/openssl-1.0.1i \
--add-module=/home/w/nginx_upstream_check_module-master \
--add-module=/home/w/nginx_upstream_hash-master


nginx的部分相关配置如下:

upstream a.com
{
#server 192.168.80.121:80 weight=3;
#server 192.168.80.122:80 weight=2;
#server 192.168.80.123:80 weight=3;
server 127.0.0.1:8080 ;
hash $cookie_jsessionid;
}

server
{
listen 80;
server_name a.com;         
location / {
proxy_pass http://127.0.0.1:8080/;      
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 1300;
proxy_set_header Cookie $http_cookie;
proxy_send_timeout 1300;
proxy_read_timeout 1300;
proxy_buffer_size 64k;
proxy_buffers 8 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 64k;
}

location /admin {
proxy_pass http://127.0.0.1/admin/;      
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header Cookie $http_cookie;
proxy_cookie_path /admin/ /;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 1300;
proxy_send_timeout 1300;
proxy_read_timeout 1300;
proxy_buffer_size 64k;
proxy_buffers 8 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 64k;
access_log /var/log/xianjxx.log;
}



location /NginxStatus {
access_log on;
auth_basic "NginxStatus";
auth_basic_user_file conf/htpasswd;
}
}

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
发表于 2014-11-11 13:59 |显示全部楼层
upstream里面配置ip_hash看看

论坛徽章:
0
发表于 2014-11-11 14:18 |显示全部楼层
试过了,还是不行
也不知后台是使用session还是cookie

论坛徽章:
0
发表于 2014-11-12 17:14 |显示全部楼层
如果服务器需要使用SSL证书,可以看下www.wosign.com 免费和收费证书都可以哦,提供技术支持

论坛徽章:
2
IT运维版块每日发帖之星
日期:2016-04-15 06:20:0015-16赛季CBA联赛之福建
日期:2016-08-08 13:37:03
发表于 2014-12-11 16:40 |显示全部楼层
查一下登录时http应答的Location吧,
IE的话就F12。
可以比较一下nginx和直接访问apache的区别。

会不会是proxy_redirect off的问题?注释掉试试?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

DTCC2020中国数据库技术大会

【架构革新 高效可控】2020年12月21日-23日第十一届中国数据库技术大会将在北京隆重召开。

大会设置2大主会场,20+技术专场,将邀请超百位行业专家,重点围绕数据架构、AI与大数据、传统企业数据库实践和国产开源数据库等内容展开分享和探讨,为广大数据领域从业人士提供一场年度盛会和交流平台。

http://dtcc.it168.com


大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP