nginx反向代理后页面内嵌入的iframe无法打开

        通过nginx反向代理的方式代理一个系统的资源,但是访问代理后的地址后登录报错500,因为系统比较久远无人维护,无法查看应用的日志,无法得知具体的报错信息。

        经过多次排查,确认是接口校验了请求的referren请求头,首先通过nginx设置请求头替换referren为原来的地址:

        proxy_set_header Referer "http://xx.xx.x.xx/";

        修改后发现还是无法解决问题,然后通过替代页面元素的方式,使iframe访问页面的时候不去生成referren请求头:

        subs_filter '<head>' '<head> <meta name="referrer" content="never">';
        sub_filter_once off;
        sub_filter_types *;

        最后问题成功解决。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Nginx用作反向代理时,有时可能会出现无法登录的情况。这可能是由于反向代理服务器不正确地处理了身份验证信息导致的。 首先,我们需要检查Nginx配置文件中的proxy_pass指令。确保将请求正确地转发到目标服务器。例如,如果您正在使用HTTPS,则需要将目标服务器的URL指定为https://而不是http://。 其次,我们需要检查是否正确地传递了身份验证信息。这可以在配置文件中使用proxy_set_header指令来完成。例如,如果目标服务器要求基本身份验证,则可以使用以下指令将用户名和密码传递给目标服务器: ``` location / { proxy_pass http://example.com; proxy_set_header Authorization "Basic base64encoded(username:password)"; } ``` 确保将“base64encoded(username:password)”替换为实际的用户名和密码的base64编码。 此外,还要确保Nginx服务器的时间正确设置,以避免与目标服务器之间的TLS/SSL握手问题。如果Nginx服务器和目标服务器的时间不同步,可能会导致TLS/SSL握手失败,从而导致无法登录。 最后,还要检查目标服务器的登录日志以查看是否有任何错误消息。这将有助于确定问题的具体原因。 通过检查以上几点,我们应该能够解决Nginx反向代理无法登录的问题。如果问题仍然存在,请查看Nginx和目标服务器的错误日志以获取更多详细信息,并尝试进行进一步的故障排除。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大白家的

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值