全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 551|回复: 3

nginx二级目录代理服务,认证页面返回302问题求助

[复制链接]
发表于 2021-11-24 11:54:56 | 显示全部楼层 |阅读模式
本帖最后由 archer99 于 2021-11-24 13:32 编辑

因为域名有限,一个域名复用
nginx上配置了一个二级目录/dev/jupyter/,代理到10.100.20.3:8888的服务
这个8888的服务登陆是有auth login页面的,访问会有302重定向,导致访问有问题,以下是当前的配置。麻烦彦祖们指导一下,这种有登陆页面的怎么配置。

当前配置
location ~ /dev/jupyte {
    rewrite ^/dev/jupyte(.*)$ /$1 break;
    proxy_set_header Host $hostserver_port;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_pass http://10.100.20.3:8888;
    proxy_redirect default;
    access_log  /opt/nginx/log/jupyter_8888.log;
}

已有的一个思路是加个判断:
if ($http_cookie !~* "User-Token") {
proxy_pass $host//dev/jupyte/auth_login?;
break;
}

一直使用的是不带认证的,然后url做个拼接就访问过去了,这种有认证的页面,又是二级目录代理,怎么搞?
如果是根目录代理的话,就没这些问题了
 楼主| 发表于 2021-11-24 13:06:10 | 显示全部楼层
有大佬搞过吗
发表于 2021-11-24 13:19:47 | 显示全部楼层
就算不带认证你这个nginx配置也有问题吧,除了根目录其他目录都访问不到吧。
  1. rewrite ^/dev/jupyte(.*)$ / break;
复制代码
去掉,location改成
  1. location ~ /dev/jupyte/(.*)
复制代码
,proxy_pass改成
  1. proxy_pass http://10.100.20.3:8888/$1;
复制代码

这样应该就ok了
 楼主| 发表于 2021-11-24 13:31:59 | 显示全部楼层
他回精神病院了 发表于 2021-11-24 13:19
就算不带认证你这个nginx配置也有问题吧,除了根目录其他目录都访问不到吧。
把去掉,location改成,proxy_ ...

谢谢大佬,rewrite ^/dev/jupyte(.*)$ /$1 break; 这里更新了一下。这俩效果应该一样的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-4-27 23:45 , Processed in 0.059964 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表