返回文章列表

通过 nginx 为目录增加用户认证( auth basic)

项目需要,因此整理下nginx下为目录增加用户认证的配置: nginx的auth_basic认证采用与apache兼容的密码文件,因此我们需要通过apache的htpasswd生成密码文件。 首先查找你系统上的htpasswd [code lang="xml"]find / –name htp...

1 分钟阅读

项目需要,因此整理下nginx下为目录增加用户认证的配置:

nginx的auth_basic认证采用与apache兼容的密码文件,因此我们需要通过apache的htpasswd生成密码文件。

首先查找你系统上的htpasswd

[code lang="xml"]find / –name htpasswd[/code]

一般CentOS都会装apache的,位置在:

[code lang="xml"]/usr/bin/htpasswd[/code]

如果没找到那就自行安装

[code lang="xml"]yum install apache[/code]

并找到htpasswd文件地址。

找到htpasswd文件后,我们来创建一个用户,比如这个用户叫:xiaoquan

[code lang="xml"]/usr/bin/htpasswd –c /usr/local/ngnix/conf/authdb xiaoquan[/code]

上面的命令在nginx的配置文件目录创建了用户为xiaoquan的authdb密码文件,当然你也可以创建的在其他地方,此处nginx配置文件使用比较方便。

上面的命令输入回车后会得到提示输入密码的提示信息,输入两次,即可添加成功。

接着修改nginx的配置文件,在某个需要加auth_basic的server配置下添加如下内容

[code lang="xml"]<br />
location /admin/ {<br />
auth_basic "QuanLei Auth.";<br />
auth_basic_user_file /usr/local/ngnix/conf/authdb;<br />
}<br />
[/code]

最后让nginx使用最新的配置:

[code lang="xml"]/usr/local/ngnix/sbin/nginx -s reload[/code]

补充一下,如果你使用了集群环境,那么还需要加Proxy_Pass:
[code lang="xml"]<br />
location /admin/ {<br />
proxy_pass http://cluster/mgmt/;<br />
auth_basic "QuanLei Auth.";<br />
auth_basic_user_file /usr/local/ngnix/conf/authdb;<br />
}<br />
[/code]

评论交流

暂无评论,欢迎留下你的想法