你好呀,我是赵兴晨,文科程序员。
大家在工作中有没有遇到过这样的需求,新上的网站部署到生产服务器上,但是还没公开,只允许个别高层领导看。
思来想去,我想到了一个简单的方法,通过Nginx对网站资源进行加密,提供高层领导用户名和密码即可访问到网站资源,其他不知道密码的拒之门外。下面我就详细说一下操作步骤。
跳过Nginx部署直接上干货!
1.生成加密后的密码
openssl passwd -apr1
解析:
openssl passwd -apr1 命令是用于生成 Apache 格式的加密密码,它不提供直接设置用户名的选项。
通常,Apache 的密码文件(如 .htpasswd)是一个简单的文本文件,每行包含一个用户名和对应的加密密码。
2.配置用户名和密码
创建一个文本文件,比如 passwords,然后将用户名和加密后的密码写入其中: (每行一个用户,用户名和密码之间使用冒号分隔。)
user:$apr1$F9T1zg1U$SaE5UGhSXM1lUz6LdwbSj/
3.配置nginx
location / {
auth_basic "Restricted Access"; # 提示用户输入用户名和密码
auth_basic_user_file /path/to/passwords; # 指定密码文件的路径
...
}
还可以允许指定IP访问资源
location / {
# 允许的IP地址
allow 192.168.100.253;
# 禁止其他IP地址
deny all;
}
到这就结束了,是不是很简单啊。
你学废了嘛,有疑问的同学,欢迎在评论区留言!