在CentOS 7上使用nginx设置HTTP身份验证

・2 分钟阅读

在本指南中你会学习如何为CentOS 7上的nginx Web服务器设置HTTP身份验证。

要求

开始之前,您需要以下内容:

  • SSH客户端如putty bitvise SSH等
  • 安装了CentOS 7 x64的VPS服务器。
  • 服务器上安装了Nginx。

让我们开始吧

安装httpd-tools软件包。


yum install httpd-tools

创建.htpasswd文件。


htpasswd -c /path/to/directory/.htpasswd username

.htpasswd文件会包含有关用户名和密码的信息,/path/to/directory -是要为它设置身份验证的目录的完整路径,username -我们会使用这个身份验证-你可以使用你想要的名字,输入安全密码,并再次输入相同的密码确认它。

我们成功创建了用户身份验证,现在唯一需要做的就是修改Nginx配置,以便使用.htpasswd文件。

你会在/etc/nginx/conf.d/default.conf下找到你的缺省配置。

我们将在配置中添加2行


server {
 listen 80;
 server_name example.com www.example.com;

 location / {
 root /path/to/directory/;
 index index.php index.html index.htm;
 auth_basic"Restricted area - This system is for the use of authorized users only!";
 auth_basic_user_file /path/to/directory/.htpasswd
 }

我们添加了这些行:


auth_basic"Restricted area - This system is for the use of authorized users only";
auth_basic_user_file /path/to/directory/.htpasswd

第一行定义访问安全目录时登录框显示的文本,第二行包含.htpasswd文件的路径。

保存配置,并且使用/etc/init.d/nginx restart重新启动Nginx服务,

Hrh profile image