Nginx 如何使用 css 设置自定义错误页面

Nginx 如何使用 css 设置自定义错误页面

我已经设置了自定义错误页面,但 css 没有加载,两个文件都在同一目录中C:/laragon/www/error/404.html C:/laragon/www/error/style.css

server {
listen 80 default_server;
listen 443 ssl default_server;
...
error_page 404 /404.html;
location = /404.html {
    root C:/laragon/www/error/;
    allow all;
    internal;
}

}

<!DOCTYPE html>
<html lang="en">
<head>
    ...
    <link type="text/css" rel="stylesheet" href="style.css" />
</head>
<body>

    <div id="notfound">
        <div class="notfound">
            <div class="notfound-404">
                <h1>Oops!</h1>
                <h2>404 - The Page can't be found</h2>
            </div>
            <a href="#">Go TO Homepage</a>
        </div>
    </div>

</body>

</html>

答案1

您的静态文件style.css不是从您在此处显示的 加载的location,而是从其他 加载的location。这是因为该文件确实存在,因此它不会返回 404 错误!它将像任何其他普通静态文件一样提供。只有 404 页面本身适用于此location

如何解决此问题取决于您的配置的其余部分以及您希望如何设置文件系统。我建议您移动静态文件,以便它与所有其他静态文件一起提供。

相关内容