nginx - 如何在不更新 Gitlab nginx 的情况下保留端口和 url?
问题描述
nginx(ng1):172.168.240.5
Gitlab包括nginx(ng2):172.168.240.55
ng1 配置
listen 81;
server_name ng1;
location /gitlab/ {
proxy_pass 172.168.240.55/
}
如何在不更新 ng2 的情况下保留端口和 url。// 只修改ng1
网址 gitlab 丢失
这是登录(POST)http://ng1:81/gitlab/users/sign_in
但它显示http://ng1:81/users/sign_in而不是http://ng1:81/gitlab/users/sign_in
它似乎被 ng2 重写了
url gitlab 和端口丢失
单击http://ng1:81/gitlab/root/pg/中的一个文件
但它是http://ng1/root/pg/index.html而不是http://ng1:81/gitlab/root/pg/index.html
解决方案
需要 nginx 反向代理 /servername/port/ 用于动态服务器名和端口
我找到解决方案(dns 服务器 + nginx) 使用 nginx 正则表达式位置匹配将 URI 动态映射到多个反向代理的不同端口
推荐阅读
- mysql - java.lang.ClassNotFoundException:org.apache.tomcat.dbcp.dbcp2.BasicDataSourceFactory
- r - 如何生成没有重复 ID 行的二进制变量
- reactjs - 无法在未安装的组件上调用 setState 在 react native 中使用 firebase auth
- javascript - 关闭 PhotoEditorSDK ReactUI 的正确方法是什么?
- reactjs - 同一个 ID ReactJS 上的不同组件
- javascript - 滚动速度比主要内容慢的侧边栏
- python - 在开始和结束模式之间多次查找模式python regex
- java - 将带有 Retrofit 库的嵌套 JSON 解析为 RecyclerView:出现加载数据错误
- c - 如何从C中的字符中删除空白行?
- android - android应用程序(Intent.ACTION_VIEW)如何在浏览器中打开带有命名窗口的url