加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

linux – NGINX:仅在所有目录中提供特定的文件类型

发布时间:2020-12-13 21:31:19 所属栏目:Nginx 来源:网络整理
导读:我需要只在虚拟服务器上提供.vmdk和.vmx文件,无论目录级别如何.这是我当前的配置(现在它为所有配置服务,但是如果我取消注释它的下半部分它什么都不提供): server { listen 80; server_name vmdk; access_log /var/log/nginx/localhost.access.log; root /sr

我需要只在虚拟服务器上提供.vmdk和.vmx文件,无论目录级别如何.这是我当前的配置(现在它为所有配置服务,但是如果我取消注释它的下半部分它什么都不提供):

server {
    listen  80;
    server_name vmdk;

    access_log  /var/log/nginx/localhost.access.log;
    root /srv/vmdk/public;

    location ~ (./?|vmdk|vmx)${
            autoindex on;
    }


    #location / {
    #       deny all;
    #}

}

我该如何实现这一目标?

如果使用Apache更容易实现,那么也可以使用示例Apache配置.

最佳答案
这应该工作

server {
    listen   80;
    server_name  vmdk;

    access_log  /var/log/nginx/localhost.access.log;
    root /srv/vmdk/public;

    location / {
        deny all;                     # deny by default

        location ~ ".(vmdk|vmx)$" {
            allow all;                # allow vm disk images,etc.
        }

        location ~ "/$" {
            allow all;
            autoindex on;             # allow listing directory contents
        }
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读