V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
Cola90
V2EX  ›  Linux

求助一个基础 Nginx 问题

  •  
  •   Cola90 · Feb 1, 2018 · 3286 views
    This topic created in 3012 days ago, the information mentioned may be changed or developed.

    location / { proxy_pass http://10.0.0.1; }

    访问 /login.html 正常 访问 /login/login.html 提示 404,这时数据并不会转发到后端服务器。

    问题:像 /login/login.html 这种有二级路径的应该怎样写 location? Nginx 有没有类似 Haproxy dafault backend 的选项?

    7 replies    2018-02-01 14:45:53 +08:00
    234747005
        1
    234747005  
       Feb 1, 2018   ❤️ 1
    location / { proxy_pass http://10.0.0.1; }
    这一行就等于 http://10.0.0.1/
    如果你是想 /login/login.html 等于 http://10.0.0.1/login/login.html
    你就 z 这样改 location /login { proxy_pass http://10.0.0.1; }
    Beebird
        2
    Beebird  
       Feb 1, 2018
    如果 location / 是唯一的规则的话,访问任意 uri 都必定会转发到后端 proxy 的,楼主应该是搞错了吧。
    Cola90
        3
    Cola90  
    OP
       Feb 1, 2018
    @Beebird 是唯一规则,但是这地址 nginx 会在本地找资源,而不是转发到后端服务器,我也搞不懂
    seers
        4
    seers  
       Feb 1, 2018
    proxy_pass http://10.0.0.1/;
    panzhc
        5
    panzhc  
       Feb 1, 2018
    location /login { proxy_pass http://10.0.0.1/; }
    加一个 location,ip 后面的斜杠不能少
    JHerschel
        6
    JHerschel  
       Feb 1, 2018
    @Beebird 说的没错,如果只有这一条规则的话,访问 /login/login.html 应该会被转发到 http://10.0.0.1/login/login.html;
    Cola90
        7
    Cola90  
    OP
       Feb 1, 2018
    已解决,感谢楼上各位
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2497 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 10:08 · PVG 18:08 · LAX 03:08 · JFK 06:08
    ♥ Do have faith in what you're doing.