未找到 NGINX 图像

NGINX Image not found

我正在尝试制作自定义 404 页面。

这是我的 404.html:

<html>
<head>
    <meta charset="UTF-8">
    <title>Not Found</title>
</head>
<body>
    <div style="...">
      <div style="...">404</div>
      <div style="...">Page not found</div>
      <img src="404.gif" alt="not found" />
    </div>
</body>
</html>

它(几乎)有效,但我总是在尝试加载 404.gif

时遇到“未找到”错误

这是我的 nginx 配置(只想使 localhost/main/datalocalhost/main/test 路径可用):

http {
  server {
    listen 80;
    server_name localhost;
    error_page 404 /404.html;

    location = /404.html {
      root /var/www/error/;
    }

    location /404.gif {
      root /var/www/error/;
    }

    location ~ ^/main/(data|test)$ {
    }

当我尝试访问 http://localhost/main/error_page 服务器 returns 自定义 404 页面时,没有 gif 和错误 GET http://localhost/main/404.gif 404 (Not Found)

如何加载我的 gif,我需要在 html 中提供什么路径或如何更改配置?

在图片标签 src 中使用正确的图片路径

<img src="../somefolder/somefoler/404.gif" alt="not found" />

需要像这样重定向对这个 gif 的任何请求

location ~* /(.*)404.gif$ {
    try_files $uri $uri/ /404.gif;
}