使用Nginx隐藏后端的路径
|
我在主机B-beta上运行OpenNMS,其URL如下:
我想使用NginX来隐藏这个可以从主机a-alpha访问的路径,如下所示:
所以我想我需要的是重写发送到后端的请求以将路径从/ omber / nms更改为/ opennms – 但是如果用户不可见 – 这是可以做到的吗? HTTPS工作正常. 最佳答案 第一步是将来自Nginx的请求代理到您的其他服务器.在a-alpha上:
从这里开始,其余配置非常依赖于OpenNMS的功能(我不熟悉). 下一部分是处理重定向.如果请求来自客户端(例如,您的表单POST到b-beta上的URL或者您的链接指向b-beta),那么您需要从Nginx单独解决这些请求.请记住,浏览器不知道代理 – 因此它会在不修改服务器的情况下发送请求. 如果你看一下OpenNMS登录页面(例如,live demo).登录表单POST到opennms / j_spring_security_check.成功登录会导致: > 302重定向到opennms,然后是 使用Nginx,您不能(轻松)更改表单POST的路径(尽管可能是OpenNMS配置选项),但您可以更改返回浏览器的重定向.有一些指令需要考虑:
如果包含在上面的位置块中,这应该等于proxy_redirect default.
默认情况下,Nginx会将Host标头设置为$proxy_host.如果您在b-beta上设置OpenNMS,就像它在a-alpha上运行一样(例如告诉它该域是a-alpha,安装服务器阻止匹配a-alpha等),那么你需要通过主机头由a-alpha接收而不是让Nginx修改它: (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 带有try_files和index的nginx无限循环
- 验证Nginx是否在提供静态文件而不是Flask
- Nginx:1M map的最佳map_hash_max_size和map_hash_bucket_s
- ruby-on-rails – 带nginx的乘客:无法加载此类文件 – bun
- REMOTE_ADDR没有使用nginx龙卷风发送给Django
- 优化Nginx PHP-FPM,每日浏览量达500万次
- nginx – 将cronjob作为www-data运行
- 从PHP触发Node.js事件
- nginx – 仅当请求中存在某个标头时才进行基本身份验证?
- http – 如何在Nginx服务器上允许PUT文件请求?
- 网络 – 为什么request_time比nginx access.log中
- nginx – Rails 3.2中的活动记录查询问题
- php-如何使用自定义Nginx配置作为官方Nginx Dock
- ruby-on-rails – 在nginx和unicorn设置上Rails重
- node.js – 你应该如何处理auth并在微服务之间共
- nginx:“/ root /index.html”禁止(13:权限被拒
- 如何使用Nginx进行身份验证的用户目录
- SSL连接失败,没有来自服务器的证书请求,从AWS上运
- apache-2.2 – 使用Nginx进行严格的安全性和虚拟
- linux – ‘没有包nginx可用’错误CentOS 6.5
