你好,我有一个静态文件(虚拟机中 /song 目录下的 song.mp3),我想/song
使用 nginx Web 服务器在路径下提供该文件。如果有人在浏览器中访问该路径,则该文件应该开始下载。
我在配置文件中添加了以下信息
server {
listen 80;
listen [::]:80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location /song {
root /song/song.mp3;
}
}
但是当我启动 nginx 服务并使用该路径时,http://localhost/song
它会抛出 404 not Found。有什么提示可以说明是什么原因造成的吗?
答案1
您好,您可以尝试以下操作
server
{
listen 80;
listen [::]:80;
server_name localhost;
location /
{
root /usr/share/nginx/html;
index index.html index.htm;
}
location /song/
{
try_files $uri /song/$uri;
}
}
尝试使用try_files。 这$uri将映射 /song/ 目录和 /song/ & 当你点击 url 时http://localhost/song/song.mp3它将开始下载。
还要确保歌曲.mp3存在于/usr/share/nginx/html/song
文件夹中。