第1步 - 安装Apache Tools
需要htpassword
命令来配置将限制对目标网站的访问的密码。此命令是apache2-utils
程序包的一部分,因此第一步是安装该程序包。
sudo apt-get install apache2-utils
步骤2 - 设置HTTP基本身份验证凭据
在此步骤中,运行网站的用户创建密码。
该密码和关联的用户名将存储在指定的文件中。密码将被加密,文件名可以是任何名称。在这里,我们使用文件/etc/nginx/.htpasswd
和用户名nginx。
要创建密码,请运行以下命令。需要进行身份验证,然后指定并确认密码。
sudo htpasswd -c /etc/nginx/.htpasswd nginx
检查新创建的文件的内容以查看用户名和散列密码。
cat /etc/nginx/.htpasswd
nginx:$apr1$ilgq7ZEO$OarDX15gjKAxuxzv0JTrO/
第3步 - 更新Nginx配置
已经创建了HTTP基本身份验证凭据,下一步是更新目标网站的Nginx配置以使用它。
auth_basic
和auth_basic_user_file
指令使HTTP基本认证成为可能。值为auth_basic
任意字符串,将在身份验证提示下显示; value auth_basic_user_file
是在步骤2中创建的密码文件的路径。
两个指令都应该位于目标网站的配置文件中,目标网站通常位于/etc/nginx/sites-available
目录中。使用nano
或您喜欢的文本编辑器打开该文件
sudo nano /etc/nginx/sites-available/default
在location部分下,添加两个指令:
. . . server_name localhost; location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; # Uncomment to enable naxsi on this location # include /etc/nginx/naxsi.rules auth_basic "Private Property"; auth_basic_user_file /etc/nginx/.htpasswd; } . . .
第4步 - 测试安装程序
要应用更改,请先重新加载Nginx
sudo service nginx -s reload
参考来源:https://cloud.tencent.com/developer/article/1355885