手动阀

Good Luck To You!

Nginx对某个目录设置密码保护例子

在Nginx中,你可以使用HTTP基本认证来对某个目录设置密码保护,以下是一个示例配置,假设你要保护的目录是/protected

Nginx对某个目录设置密码保护例子

1、你需要创建一个密码文件,可以使用htpasswd 工具来生成这个文件,如果你没有安装apache2utils(包含htpasswd 工具),可以通过包管理器安装它,在Debian/Ubuntu系统上,可以运行:

    sudo aptget install apache2utils

2、使用htpasswd 命令创建密码文件,创建一个名为.htpasswd 的文件:

    sudo htpasswd c /etc/nginx/.htpasswd username

这里username 是你希望用来登录的用户名称,你会被提示输入并确认密码。

3、编辑你的 Nginx 配置文件(通常位于/etc/nginx/nginx.conf/etc/nginx/sitesavailable/default),添加以下内容以启用基本认证:

Nginx对某个目录设置密码保护例子

    server {
        listen 80;
        server_name your_domain.com;
        location /protected {
            auth_basic "Restricted Area";
            auth_basic_user_file /etc/nginx/.htpasswd;
        }
        location / {
            try_files $uri $uri/ =404;
        }
    }

在这个配置中:

auth_basic "Restricted Area"; 设置了基本认证的提示信息。

auth_basic_user_file /etc/nginx/.htpasswd; 指定了存储用户名和密码的文件路径。

4、保存配置文件并测试 Nginx 配置是否正确:

Nginx对某个目录设置密码保护例子

    sudo nginx t

5、如果测试通过,重新加载 Nginx 服务以应用更改:

    sudo systemctl reload nginx

当你访问http://your_domain.com/protected 时,浏览器会提示你输入用户名和密码,只有输入正确的凭据后,才能访问该目录的内容。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

Copyright Your WebSite.Some Rights Reserved.