首页 > 解决方案 > Nginx 不提供音频文件

问题描述

我在 Nginx 后面建立了一个静态站点,但在提供音频文件时遇到了问题。

如果我把它们放在一个同级的文件夹中,index.html那么它们就找不到了,如果我只是把它们放在旁边,index.html那么它们就很好了——这就是我现在所做的,但自然地,我更愿意把它们分开。我也很想知道问题出在哪里。

这是我的 Nginx 配置文件:

▽
server {
    server_name space-invaders.hollyer.me.uk www.space-invaders.hollyer.me.uk;
    listen 80;
    root /home/username/www/html/space-invaders/public;

    location / {
    }

}

我检查了错误日志,这是一个片段,看起来像是/index.html被标记到路径上。

[error] 6512#6512: *63 "/home/username/www/html/space-invaders/public/sfx/mothership.wav/index.html" is not found (20: Not a directory)

奇怪的是,如果我将它们从sfx文件夹中移出,然后将它们放入它们就可以正常使用(显然,public在修复了 中的路径之后)。html

我尝试过location如下使用另一个上下文,但没有任何乐趣。

location ~ \.wav {
    alias /sfx;
}

任何人都可以对此有所了解吗?

谢谢

标签: nginxnginx-location

解决方案


nginx.com 上的文档在这里可能会有所帮助。 https://docs.nginx.com/nginx/admin-guide/web-server/serving-static-content/ 不过,我感觉您可能已经看到了链接。

我没有尝试复制您的特定场景,但看看您是否可以包含 index 指令。


推荐阅读