Nginx 仅允许直接访问图像

Nginx 仅允许直接访问图像

我想/var/files向用户公开文件http://myweb.com/img/someimage.jpg,但也禁止访问非图像文件。

这就是我想做的,但没有效果,你能帮助我吗?

    location /img/*\.(jpg|jpeg|gif|png|bmp|ico) {
        alias /var/files;
    }

答案1

根据文档,您应该能够通过正则表达式匹配文件名并在语句中使用它alias,即

location ~ /img/(.+\.(?:jpg|jpeg|gif|png|bmp|ico))$ {
    alias /var/files/$1;
}

(这几乎就是其中一个例子 ;-)

相关内容