全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

IP归属甄别会员请立即修改密码
查看: 2949|回复: 17
打印 上一主题 下一主题

[已解决] 后端ip发送变化的时候,应如何自动更新后端ip,避免502错误

[复制链接]
跳转到指定楼层
1#
发表于 2012-12-23 11:20:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 joyanhui 于 2012-12-23 11:24 编辑

  1. server
  2.         {
  3.                 listen       80;
  4.                 server_name 123.com www.123.com;
  5.                 location /
  6.                         {
  7.                                 proxy_pass http://domina.3322.com:7780/; #反代的网站的域名,采取动态IP
  8.                                 proxy_set_header Host $host;
  9.                         }                access_log off;
  10.         }
复制代码
每次后端服务器ip发送变化 都会出现502错误。

试过
1、重启nscd
2、重启nginx

都不行,最后重启 前端nginx服务器才可以。。。

除了重启服务器,应该有别的方法可以搞定的吧?
2#
发表于 2012-12-23 11:20:29 | 只看该作者
友情帮顶!
3#
发表于 2012-12-23 11:24:07 | 只看该作者
没遇到过好像
4#
发表于 2012-12-23 11:35:43 | 只看该作者
本帖最后由 lazyzhu 于 2012-12-23 11:50 编辑

location加个
resolver 8.8.8.8;
dns更新时间依据域名TTL,也可以自己指定时间:
resolver 8.8.8.8 valid=60s;

补充:proxy_pass 后面一定要有变量才有效。
5#
发表于 2012-12-23 11:40:17 | 只看该作者
还是小灰灰给力
6#
 楼主| 发表于 2012-12-23 12:04:51 | 只看该作者
lazyzhu 发表于 2012-12-23 11:35
location加个
resolver 8.8.8.8;
dns更新时间依据域名TTL,也可以自己指定时间:

proxy_pass  就是指定的后端的ip,怎么设置成变量呢?
7#
发表于 2012-12-23 12:09:05 | 只看该作者
joyanhui 发表于 2012-12-23 12:04
proxy_pass  就是指定的后端的ip,怎么设置成变量呢?


我以为proxy_pass后面是域名呢,域名的IP会变化了。

如果是IP且知道是哪些IP的话,可以用Upstream
http://wiki.nginx.org/HttpUpstreamModule
8#
发表于 2012-12-23 12:14:37 | 只看该作者
joyanhui 发表于 2012-12-23 12:04
proxy_pass  就是指定的后端的ip,怎么设置成变量呢?

你的http://domina.3322.com:7780/是IP吗?我倒了。。

proxy_pass http://domina.3322.com:7780/;
改成:
set $backend http://domina.3322.com:7780/;
proxy_pass $backend;
9#
发表于 2012-12-23 12:21:07 | 只看该作者
upstream呗
10#
发表于 2012-12-23 12:29:26 | 只看该作者
有个502自动脚本转向。。搜搜
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-10-12 12:44 , Processed in 0.090423 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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