V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
NGINX
NGINX Trac
3rd Party Modules
Security Advisories
CHANGES
OpenResty
ngx_lua
Tengine
在线学习资源
NGINX 开发从入门到精通
NGINX Modules
ngx_echo
hippoking
V2EX  ›  NGINX

这个 nginx 的问题让我郁闷了

  •  
  •   hippoking · 2017-05-13 20:22:35 +08:00 · 4754 次点击
    这是一个创建于 2780 天前的主题,其中的信息可能已经有所发展或是发生改变。
    国内一台主服务器放在阿里云,用 nginx 服务国内客户
    另外一台阿里云 HKB 的服务器,用 nginx 反代国内的主服务器来服务国外客户

    然后郁闷的事情出现了,阿里云 HKB 的那台 nginx,反代的是国内 nginx 服务器的 80 端口,刚开始没有问题,然后大约一个小时以后就开始 502, 无论是重起 nginx 还是重启服务器都没用. 因为这台服务器上就只有 nginx 服务,所以也不会有 php-fpm 的问题. 无意中我把反代的源端端口改成 88 (源服务器开了 80,88 两个 http 服务端口),监控了好几天,502 的问题就没有了

    然后同样的 nginx 配置我放在香港其他的云上,同样是反代 80 端口,一直都没有任何问题

    这个问题让我郁闷了快一个星期了,就是查不到问题在哪

    很明显的是我的 nginx 配置没有问题,难道是反代 80 端口,触发了阿里云的什么保护规则?
    24 条回复    2017-05-15 10:50:19 +08:00
    ericFork
        1
    ericFork  
       2017-05-13 21:34:13 +08:00
    HKB 的机器 502 时的 nginx error log 看了没?
    hippoking
        2
    hippoking  
    OP
       2017-05-13 21:37:59 +08:00
    @ericFork #1 看了

    就是(error 104: Connection reset by peer) while reading response header from upstream

    google 上写的都是什么 php-fpm, fastcgi 缓存什么的
    ericFork
        3
    ericFork  
       2017-05-13 21:41:35 +08:00
    @hippoking #2 80 端口可能有较频繁或者强度较高的检测(阿里云或墙),而这个检测有时可能抽风导致把你给误 RST 了,或者回源时恰好触发了关键词

    个人建议:源站启用 https,反代同样走 https 回源。
    hippoking
        4
    hippoking  
    OP
       2017-05-13 21:44:06 +08:00
    @ericFork #3 嗯看来应该是阿里云的检测。。。因为我用其他的香港的服务器,就没有任何问题。。
    hippoking
        5
    hippoking  
    OP
       2017-05-13 21:48:10 +08:00
    @ericFork #3 在 HK 的反代上,我用的是 http IP 的形式,如果改成 https 反代的形式, 这个对 IP 的 https,需要买证书吗?还是自己签发一个内部使用就可以了
    pubby
        6
    pubby  
       2017-05-13 21:53:48 +08:00 via Android
    @hippoking 自签就行
    ericFork
        7
    ericFork  
       2017-05-13 21:56:04 +08:00
    @hippoking #5 自己签就可以,或者用 ssl-cert 这个包(如果是 debian 系发行版)生成的 snakeoil 就可以了
    nginx 走 https 回源时,默认并不验证证书身份,而你这里也并没有验证的必要
    hippoking
        8
    hippoking  
    OP
       2017-05-13 21:58:59 +08:00
    @ericFork #7 明白了, 这个是需要对 IP 使用 ssl 对吧? 貌似我还没见过对 IP 进行 ssl 的
    ericFork
        9
    ericFork  
       2017-05-13 22:02:06 +08:00
    @hippoking #8 并不是对 IP 使用 SSL,你回源时 proxy_pass https://blabla 这里的 blabla 根本也不会作为 Host 头传回去的,这个证书和域名没有关系
    doubleflower
        10
    doubleflower  
       2017-05-13 22:05:48 +08:00
    既然用 88 端口没事何不就用 88 好了,用 ssl 还有性能损失
    akira
        11
    akira  
       2017-05-13 22:09:22 +08:00
    同一 ip 访问频次过高,触发云盾之类的了。要么关了云盾试试看,或者直接换个 ip 就是了
    hippoking
        12
    hippoking  
    OP
       2017-05-13 22:10:10 +08:00
    @ericFork #9 我一般设置回源时,是 proxy_pass http://42.57.XX.XXX 我去试试
    hippoking
        13
    hippoking  
    OP
       2017-05-13 22:12:06 +08:00
    @doubleflower #10 强迫症。。。
    takashiki
        14
    takashiki  
       2017-05-14 13:00:55 +08:00
    我也一直遇到这个问题,小鸟云香港,束手无策

    rootx
        15
    rootx  
       2017-05-14 16:07:49 +08:00 via iPhone
    云盾是关闭不了的…一旦上了阿里云 基本上就告别别家的服务了。
    hippoking
        16
    hippoking  
    OP
       2017-05-14 18:34:14 +08:00 via iPhone
    @takashiki 可以试试非 80 端口.
    takashiki
        17
    takashiki  
       2017-05-14 19:04:06 +08:00
    @hippoking #16 443 https 端口也一样
    xjchengo
        18
    xjchengo  
       2017-05-14 19:10:29 +08:00
    放在国内云上的 HTTP 服务最好通过已备案的域名来访问
    lslqtz
        19
    lslqtz  
       2017-05-14 20:51:28 +08:00
    你云盾要放个白名单,然后要用 https。
    hippoking
        20
    hippoking  
    OP
       2017-05-14 23:48:56 +08:00
    @takashiki #17 我就是用的 88 端口的 http,一直没有问题

    我去试试 https
    hippoking
        21
    hippoking  
    OP
       2017-05-14 23:49:18 +08:00
    @lslqtz #19 阿里云的国际板,没有云盾白名单
    lslqtz
        22
    lslqtz  
       2017-05-15 01:23:49 +08:00
    @hippoking 国内的要放。。
    hippoking
        23
    hippoking  
    OP
       2017-05-15 09:53:04 +08:00
    @lslqtz #22 我国内放了。。貌似没啥鸟用。。
    qq1242245799
        24
    qq1242245799  
       2017-05-15 10:50:19 +08:00
    云服务器毕竟是服务器集群虚拟化出来的,可以试试独立服务器,我这里有 bgp 三线香港机,用不断线,售后免费。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5814 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 40ms · UTC 03:32 · PVG 11:32 · LAX 19:32 · JFK 22:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.