首页 > 解决方案 > 使用 nginx 和 auth_request 提供一个静态文件

问题描述

我正在尝试为某个位置提供静态文件。它返回 404,我不知道为什么。这是我的配置(审查了一下)

        root /home/git/website/prod/;

        location = /login {
                index login.html;
        }

        location / {
                auth_request /auth;
                try_files $uri $uri/index.html;
        }

        location = /auth {
                internal;
                proxy_pass http://127.0.0.1:5000/api/auth/logged_in;
                proxy_pass_request_body off;
                proxy_set_header Content-Length "";
                proxy_set_header X-Original-URI $request_uri;
        }


        location /api {
                proxy_pass http://127.0.0.1:5000;
        }

当我尝试访问 /login 时,它返回 404。为什么?

标签: nginxnginx-location

解决方案


假设您的 login.html 位于root文件夹 (/home/git/website/prod/) 中,您可能会使用:

location = /login {
    try_files /login.html =404;
}

或替换=404/index.html. /login.html那部分基本上是告诉 nginx 如果在服务器上找不到该尝试什么。


推荐阅读