nginx开启目录浏览功能(autoindex)

概述

这个博客其实是延迟了很久的一篇博客,暑假的时候做centos镜像站的时候想写的,nginx默认不开启这个功能,开启这个功能之后可以把它当文件浏览器使用

操作

这个肯定是要修改配置文件的
首先我们要理解下面这几个参数

  • autoindex 当设置为on的时候表示打开目录浏览功能
  • autoindex_exact_size 当设置为off的时候显示文件的大概大小就是显示单位为GB,MB,KB,如果不off默认是bytes单位
  • autoindex_localtime 当设置为on的时候默认显示文件的时间是服务器的时间

接着我们建立一个虚拟主机
在你的虚拟主机目录下新建一个文件file.conf
touch file.conf
然后添加下面配置文件

server{
    listen 8080;
    server_name 192.168.1.108;
    location / {
        root /file;
        autoindex on;
        autoindex_exact_size off;
        autoindex_localtime on;
    }
}

之后你要在根目录新建一个file文件夹,你可以在里面touch一个文件来验证,还有记住的是这个文件夹要有nginx用户的权限,我的nginx用户的名字叫www所以修改file文件夹的所有者和组为www
chown www:www /file/
之后浏览器访问你的192.168.1.108:8080就好了

上面是一整个虚拟主机打开目录浏览功能,但是有的时候我只想在这个虚拟主机下的一个目录开启这个功能怎么办
你可以把配置文件改成下面这样子

server{
    listen 80;
    server_name 192.168.1.108 www.bboy.com;
    root /wordpress;
    location / {
        index index.php index.html;
    }
    location ~ \.php$ {
        fastcgi_pass    unix:/tmp/php-cgi.sock;
        fastcgi_index   index.php;
        fastcgi_param SCRIPT_FILENAME /wordpress/$fastcgi_script_name; 
        include fastcgi_params;
    }
    location /wp-content/{
        autoindex on;
    }   
    
}

上面是一个wordpress站点,然后我修改的,在第三个location中你可以看到我添加了autoindex on这行,location位置是root下的wp-content,也就是wordpress文件夹下的wp-content目录,这个时候我们访问192.168.1.108是没有开启目录浏览的,但是我们访问192.168.1.108/wp-content我们发现这个地方是开启了目录浏览功能,还有要注意的一个很重要的地方就是root /wordpress;不能放在任何一个location下面,因为如果放在里面的话它的作用域就是这个location里面,对外面就不生效了

欢迎关注Bboysoul的博客www.bboysoul.com
Have Fun

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值