Nginx设置目录密码保护

当不允许公开访问时一些网站路径时,比如网站后台密码,我们给利用Web服务器给路径加密认证,只用输入正确的用户名和密码才能进去访问。Apache有这样的功能,Nginx也可以。下面简单介绍Nginx给某些路径加密。

生成密码

方法一、用 Apache 的 htpasswd 工具来创建用户密码文件

使用htpasswd的前提是你已经安装apache。

filename为创建好的文件,把这个文件放在无法通过WEB路径访问的目录下,在Nginx配置文件中给出这个文件的绝对路径地址 。username为用户名,passwd为密码。

方法二、使用perl 创建密码

考虑到安装了Nginx的用户未必安装Apache(httpd),如果只是为了生成个密码安装它,也未免有点大材小用。下面介绍用perl程序来生成密码。

创建程序:

写入如下内容:

给予可执行权限:

生成密码:

把输出的密码写入到一个密码文件中,格式如下:

一行一个账户。

方法三:在线生成

使用开源中国社区提供的在线工具生成,比较方便。点击这里跳转

75GDWZ

 

设置Nginx

如果使用了多域名虚拟主机配置对某个目录进行加密时,修改配置文件:

“location ~ ^/demo/book/.* {…}”这样子可以禁止未使用密码时直接访问该目录下的文件,达到我们想要的效果。

SPTD