首页 > 运维 > nginx > 正文

Nginx列出目录和文件并用密码控制访问权限怎么配置

WBOY
发布: 2023-05-17 21:49:04
转载
1558 人浏览过

使用nginx列出目录

准备工作 - 安装nginx和创建一些目录和文件:

复制代码 代码如下:


$ sudo apt-get install nginx
$ cd /usr/share/nginx
$ mkdir web
$ sudo mkdir directory{1,2,3}
$ sudo touch file{1,2,3}
$ ls
directory1  directory2  directory3  file1  file2  file3


nginx配置:

复制代码 代码如下:

$ sudo vim /etc/nginx/conf.d/list.conf 

server {
    listen       80;
    server_name  192.168.1.201;

    root /usr/share/nginx/web;
    index index.html;

    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;
}

$ sudo service nginx restart/reload


当访问http://192.168.1.201,屏幕显示:

Nginx列出目录和文件并用密码控制访问权限怎么配置

现在就可以用web服务器来共享文件;但前提是根目录下必须没有index.html文件。

授权访问指定的目录

有些目录不想让所有人看到,只有指定的用户输入密码后才能访问,例如directory只能由test1访问:

step1安装htpasswd

复制代码 代码如下:


$ sudo apt-get install apache2-utils

step2创建密码文件

复制代码 代码如下:


$ sudo htpasswd -c /home/test/.htpasswd test1
new password:
re-type new password:
adding password for user test1 

step3修改nginx配置文件

复制代码 代码如下:


$ sudo vim /etc/nginx/conf.d/list.conf

server {
    listen       80;
    server_name  192.168.1.201;

    root /usr/share/nginx/web;
    index index.html;

    autoindex on;
    autoindex_exact_size off;
    autoindex_localtime on;

    location ^~/directory1/ {
        auth_basic            "input you user name and password";
        auth_basic_user_file  /home/test/.htpasswd;
    }
}

重启nginx服务后,访问directory1目录时会提示输入登入信息:

Nginx列出目录和文件并用密码控制访问权限怎么配置

以上是Nginx列出目录和文件并用密码控制访问权限怎么配置的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:yisu.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!