http - nginx 反向代理 url 错误
问题描述
我在内网的机器A上用docker部署了一个jupyter notebook,其ip为10.11.11.10,服务端口号为8888,机器B可以通过部门二级域名(如child.testgroup.org)访问其80端口的内容。
现在我在,B机的nginx上做反向代理,希望通过child.testgroup.org/notebook来访问jupyter notebook。我的配置如下:
location /notebook/ {proxy_pass http://10.11.11.10:8888/;proxy_redirect off;proxy_set_header HOST $host;proxy_set_header X-Real-IP $remote_addr;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';}
但通过child.testgroup.org/notebook来访问时总是出现url错误,如下图:
jupyter notebook会跳转到/tree这个目录下,gitlab-ce会跳转到/sign_in,本来希望url是child.testgroup.org/notebook/tree及child.testgroup.org/notebook/sign_in,但跳转时,包括后续的ajax请求都不会自动加上/notebook/这一段,变成了child.testgroup.org/tree及child.testgroup.org/sign_in。
请大家帮忙看看怎么办,是修改nginx配置还是需要其它的要素。
问题解答
回答1:proxy_pass后面加上/notebook/,并且希望child.testgroup.org/notebook可访问,那location应该为/notebook
location /notebook {proxy_pass http://10.11.11.10:8888/notebook/;proxy_redirect off;...}
相关文章:
1. Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?2. angular.js - Web应用,单页面应用Cache问题3. position:absolute、float、display:inline-block 都能实现相同效果,区别是什么?4. android - webview 自定义加载进度条5. 输入地址报以下截图错误,怎么办?6. javascript - vue更改当前节点元素7. vue.js - vue 打包后 nginx 服务端API请求跨域问题无法解决。8. angular.js - angular post的Content-Type被设置,导致不能上传图片,求助!!9. css3 - 这个效果用 CSS 可以实现吗?border-image10. nginx配置server模块的问题

网公网安备