Nginx使用htpasswd对网站进行密码保护的配置

服务器上的有些目录,你可能不想给所有人看到,解决办法就是需要访问的人提供用户名和密码,认证成功才允许查看。如果认证失败,就会报HTTP错误:401 Authorization Required。

要实现这样的功能,就需要更改服务器的配置,并设定好用于登录的用户名和密码。

首先我们需要更改网站的Nginx的server配置,我们对需要授权访问的目录进行如下设置

location / {
  # 添加下面两行
  auth_basic "Restricted";
  auth_basic_user_file htpasswd;
  # ...
}

接下来需要创建htpasswd文件

htpasswd文件的内容

每一行为一个用户,格式为username:password。但是要注意,这里的password不是明文,而是将password进行crypt(3)加密后的字符串。

你可以使用一段PHP代码来生成htpasswd中的password:

// 密码明文
$password = 'some password';
// 对密码进行加密
$password = crypt($password, base64_encode($password));
// 获得加密后的密码
echo $password;

然后将字符串写入htpasswd文件中:

username1:xucqMk13TfooE
username2:YXTfb3xWKOMBM
...
htpasswd的权限
htpasswd文件创建成功后,接下来更改下htpasswd文件的权限,执行如下命令:

sudo chown root:www-data htpasswd
sudo chmod 640 htpasswd

当上面的准备工作都做好之后,我们就可以重新载入或者重启Nginx服务器了:

sudo /etc/init.d/nginx reload
# or
sudo /etc/init.d/nginx restart

阿里云用户的话用下面的命令

sudo chown root:www htpasswd
sudo chmod 640 htpasswd
重启nginx
sudo /alidata/server/nginx/sbin/nginx -s reload

时间: 2024-09-20 13:26:59

Nginx使用htpasswd对网站进行密码保护的配置的相关文章

在Nginx用htpasswd对网站进行密码保护的设置方法_nginx

最后的效果就类似(不同浏览器的界面有所不同): 如果认证失败,就会报HTTP错误:401 Authorization Required. 要实现这样的功能,就需要更改服务器的配置,并设定好用于登录的用户名和密码. 首先我们需要更改网站的Nginx的server配置,Ubuntu服务器的话这个配置文件通常位于/etc/nginx/sites-enabled/,比如我这里就使用默认的配置文件/etc/nginx/sites-enabled/default来做一个例子: 复制代码 代码如下: serv

《高性能Linux服务器构建实战》——1.8节实战Nginx与Perl、Java的安装与配置

1.8 实战Nginx与Perl.Java的安装与配置 通过前面的介绍,可以对Nginx有了一个比较全面的认识:Nginx本身是一个静态的HTTP服务器和反向代理服务器,它不支持动态页面,所谓的Nginx对动态程序的支持都是通过反向代理功能实现的.下面要讲述的Nginx对Perl和JSP的支持,就是通过Nginx的反向代理功能来完成的.Nginx对Perl和JSP的支持在实现细节上可能有一定差别,但是实现原理是完全一样的. Nginx的安装这里不再讲述,假定Nginx的安装路径为/usr/loc

新手-医院网站要我自己配置一个2003的服务器,请教我要从哪里入手

问题描述 医院网站要我自己配置一个2003的服务器,请教我要从哪里入手 他是医院的网站,现在是需要我来操作 然后,需要我在本地配置一个2003的服务器,他主要是想让我做什么? 还有就是我需要做哪些事情 我需要学习和认识的有哪些 配置服务器最基本的要从地方开始下手 解决方案 http://wenku.baidu.com/link?url=HlwY34QkG6A-UcL4PQ8IjY_KVzCnm1p0uGZrFbUXlyu7Ocn3B3c3IZLlhJZojA1rL8l8WujecD29VXKPu

用网站代码及主机配置中来提升网站访问速度

摘要: 这几天在站长网看到一篇关于提升网站访问速度的文章,深受感触,网站速度影响网友对网站的第一印象,如果网站访问速度很不给力,那么别希望搜索引擎会持续带来流量,更别希望 这几天在站长网看到一篇关于提升网站访问速度的文章,深受感触,网站速度影响网友对网站的第一印象,如果网站访问速度很不给力,那么别希望搜索引擎会持续带来流量,更别希望用户会长久停留在你的网站;所以,提升网站的用户体验非常重要. 当然,前面说到的那篇文章主要是用网站代码及主机配置中来提升网站访问速度,主要是增加文件缓存时间及配置DN

nginx error_log 错误日志级别以及错误日志配置、关闭错误日志说明

nginx安装好以后一般都是要配置下访问日志和错误日志,其中访问日志我们这里就不说了, 可以参考之前的文章.这里主要说明一下nginx的错误日志,这个大家都知道,开启日志主要是为了排查问题. 1,错误日志级别 error_log 级别分为 debug, info, notice, warn, error, crit  默认为crit, 格式如下: error_log  /your/path/error.log crit;  crit 记录的日志最少,而debug记录的日志最多.请根据实际情况选择

Nginx服务器中为网站或目录添加认证密码的配置详解_nginx

nginx可以为网站或目录甚至特定的文件设置密码认证.密码必须是crypt加密的.可以用apache的htpasswd来创建密码. 格式为: htpasswd -b -c site_pass username password site_pass为密码文件.放在同nginx配置文件同一目录下,当然你也可以放在其它目录下,那在nginx的配置文件中就要写明绝对地址或相对当前目录的地址. 如果你输入htpasswd命令提示没有找到命令时,你需要安装httpd.如果是centos可以执行如下来安装,

Sqlmap+Nginx“地毯式”检测网站SQL注入漏洞教程

以安全防御方的角度来看,防御的广度比深度更具优先级,这也是信息安全中木桶原理的体现. Sqlmap是一个开源的SQL注入漏洞检测工具,Nginx是高性能的WEB服务器.今天我们将二者结合起来,对网站的SQL注入漏洞实现"地毯式"的检测! 思路 sqlmap可以批量导入http代理的日志,根据日志中的每一个请求进行分析和探测.(可参考sqlmap帮助文档) 所以,我们可以配置nginx记录下网站所有的http请求信息,格式化处理后提供给sqlmap,这样sqlmap就能根据网站的每一个请

Nginx记录分析响应慢的请求及替换网站响应内容的配置_nginx

nginx记录分析网站响应慢的请求(ngx_http_log_request_speed)nginx模块ngx_http_log_request_speed可以用来找出网站哪些请求很慢,针对站点很多,文件以及请求很多想找出哪些请求比较慢的话,这个插件非常有效.作者的初衷是写给自己用的,用来找出站点中处理时间较长的请求, 这些请求是造成服务器高负载的很大根源. 日志记录之后,在使用perl脚本分析日志,即可知道哪些请求需要修正.1. 模块安装nginx第三方模块安装方法这里就一笔略过了. 配置参数

Nginx+SSL搭建 HTTPS 网站_nginx

一.HTTPS 是什么? 根据维基百科的解释: 复制代码 代码如下: 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器身份的鉴定.HTTPS连接经常被用于万维网上的交易支付和企业信息系统中敏感信息的传输.HTTPS不应与在RFC 2660中定义的安全超文本传输协议(S-HTTP)相混. HTTPS 目前已经是所有注重隐私和安全的网站的首选,随着技术的不断发展,H