Nginx proxy_pass 在我配置错误页面时停止工作

Nginx proxy_pass stoped working when I was configuring error pages

我试图为 关闭 时代理服务器后面的情况制作 500 错误页面,为未找到静态页面制作 404 错误页面。
我已经为 messengerproxy_passlocalhost:8080 工作,但是在添加自定义错误页面时,我不得不搞砸了一些事情,它停止了工作。错误页面运行良好,但 mydomain.d/messenger/ returns 404 19(我从日志中知道)但 return 自定义页面没有。

erver {
        server_name     mydomain.d;


        # newly added
        location / {
                proxy_pass "http://localhost:8081/";
        }


        # newly added
        location /webapp/planner/ {
                proxy_pass "http://localhost:8082/";
        }

        # was working for some time
        location /messenger/ {
                proxy_pass "http://localhost:8080/";
        }

        # newly added
        location /static/ {
                alias /home/static/;
        }

        # newly added
        error_page 404 /err404.html;
        location = /err404.html {
                root /home/server/errors/err404;
        }

        # newly added 
        error_page 500 502 503 504 /err500.html;
        location = /err500.html {
                root /home/server/errors/err500;
        }
        ...

我在制作错误页面时只更改了这个配置。
curl localhost:8080/messenger/xxx 给出了预期的输出。
https://mydomain.d/messenger/xxx 将我重定向到:
https://mydomain.d/xxx404 error 页。

总而言之:当为静态文件访问配置错误页面时以及代理服务器关闭的情况下,我不小心破坏了对 /messenger/proxy_pass 访问,现在只有 return 和 404 19 错误。

解决方法是什么?

我找到了问题的答案:
proxy_pass 地址末尾有不必要的 /
错误:

        location /messenger/ {
                proxy_pass "http://localhost:8080/";
        }

右:

        location /messenger/ {
                proxy_pass "http://localhost:8080"; #<-- here the '/' at end is gone
        }