服务器之家:专注于服务器技术及软件下载分享
分类导航

云服务器|WEB服务器|FTP服务器|邮件服务器|虚拟主机|服务器安全|DNS服务器|服务器知识|Nginx|IIS|Tomcat|

服务器之家 - 服务器技术 - Nginx - 详解Nginx实战之让用户通过用户名密码认证访问web站点

详解Nginx实战之让用户通过用户名密码认证访问web站点

2019-11-16 17:48小诺的Linux开源技术博客 Nginx

这篇文章主要介绍了详解Nginx实战之让用户通过用户名密码认证访问web站点,有兴趣的可以了解一下。

有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问。那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那些不速之客。

实验环境:

现在公司开通了一个内部使用网站为www1.rsyslog.org,要求所有人查看网页信息之前都必须要输入内定的用户名及密码方可浏览网页

使用nginx下虚拟主机的搭建

www1.rsyslog.org进行测试。

www1.rsyslog.org 192.168.100.107

DNS1 192.168.100.102

一、查看当前系统参数

?
1
2
3
4
[root@rhel6u3-2 ~]# uname –r //查看系统内核版本号
2.6.32-279.el6.i686
[root@rhel6u3-2 ~]# cat /etc/redhat-release //查看系统版本号
Red Hat Enterprise Linux Server release 6.3 (Santiago)

二、编辑虚拟主机配置文件

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@rhel6u3-7 ~]# vim /usr/local/nginx/conf/nginx.conf //主配置文件中http字段中添加以下语句,将虚拟主机的配置文件指向www1.rsyslog.org
include /usr/local/nginx/server/www1.rsyslog.org;
[root@rhel6u3-7 ~]# vim /usr/local/nginx/server/www1.rsyslog.org
server {
   listen    80; //监听端口为80
   server_name www1.rsyslog.org; //虚拟主机网址
   location / {
      root  sites/www1; //虚拟主机网站根目录
      index index.html index.htm; //虚拟主机首页
      auth_basic "secret"; //虚拟主机认证命名
      auth_basic_user_file /usr/local/nginx/passwd.db; //虚拟主机用户名密码认证数据库
    }
    location /status {
        stub_status on; //开启网站监控状态
        access_log /usr/local/nginx/logs/www1_status.log; //监控日志
        auth_basic "NginxStatus"; }
  }

三、通过htpasswd命令生成用户名及对应密码数据库文件。

?
1
2
3
4
5
6
7
8
9
10
[root@rhel6u3-7 server]# htpasswd -c /usr/local/nginx/passwd.db xiaonuo //创建认证信息,xiaonuo 为认证用户名
New password: ******* //输入认证密码
Re-type new password: ******** //再次输入认证密码
Adding password for user xiaonuo
[root@rhel6u3-7 server]#
[root@rhel6u3-7 ~]# chmod 400 /usr/local/nginx/passwd.db //修改网站认证数据库权限
[root@rhel6u3-7 ~]# chown nginx. /usr/local/nginx/passwd.db //修改网站认证数据库属主和属组
[root@rhel6u3-7 ~]# cat /usr/local/nginx/passwd.db //可以看到通过htpasswd生成的密码为加密格式
xiaonuo:8eZAz7BqcrXmY
[root@rhel6u3-7 ~]#

四、平滑重启nginx服务

?
1
2
3
4
[root@rhel6u3-7 ~]# /etc/rc.d/init.d/nginx reload //平滑重启nginx服务
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
Reloading nginx:                      [ OK ]

五、DNS服务器上添加www1 A记录

www1    A   192.168.100.107

六、通过IE访问www1.rsyslog.org进行测试。

别忘了将网卡首选DNS指向192.168.100.102

详解Nginx实战之让用户通过用户名密码认证访问web站点详解Nginx实战之让用户通过用户名密码认证访问web站点

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:http://www.centoscn.com/CentosServer/www/2013/0902/1531.html

延伸 · 阅读

精彩推荐
  • NginxNginx Rewrite使用场景及代码案例详解

    Nginx Rewrite使用场景及代码案例详解

    这篇文章主要介绍了Nginx Rewrite使用场景及代码案例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可...

    盗哥泡茶去了11862020-09-27
  • NginxNginx location 和 proxy_pass路径配置问题小结

    Nginx location 和 proxy_pass路径配置问题小结

    本文是基于 location 的匹配末尾是否配置 / 和 proxy_pass 末尾是否配置 / ,进行测试,完全还原了整个测试过程,本文给大家介绍Nginx location 基本配置及相关配...

    自由早晚乱余生18742021-09-24
  • Nginx利用nginx和腾讯云免费证书制作https的方法

    利用nginx和腾讯云免费证书制作https的方法

    这篇文章主要介绍了利用nginx和腾讯云免费证书制作https的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...

    dalaoyang5992019-12-30
  • Nginx如何优化Nginx的处理性能

    如何优化Nginx的处理性能

    Nginx是一个很强大的高性能Web和反向代理服务,它具有很多非常优越的特性,在连接高并发的情况下,Nginx是Apache服务不错的替代品。其特点是占有内存少,...

    Dockone.io5142020-12-11
  • Nginxnginx rewrite 伪静态配置参数和使用例子

    nginx rewrite 伪静态配置参数和使用例子

    nginx下伪静态配置参数详细说明,使用nginx的朋友,nginx rewrite 伪静态配置参数和使用例子 附正则使用说明 ...

    服务器之家3102019-10-08
  • Nginx通过Nginx规则重写URL去掉index.php不显示index.php

    通过Nginx规则重写URL去掉index.php不显示index.php

    Nginx不仅占用内存少,并发能力强,而且拓展功能丰富,可以通过安装模板来强化功能,也能通过规则优化,优化服务器并发处理能力,是建站的不二之选...

    Genius日记5872020-10-16
  • NginxNginx动静分离实现案例代码解析

    Nginx动静分离实现案例代码解析

    这篇文章主要介绍了Nginx动静分离实现案例代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参...

    盗哥泡茶去了3382020-09-27
  • Nginxnginx ssl免密码重启教程详解

    nginx ssl免密码重启教程详解

    这篇文章给大家介绍了nginx 如何启动以及nginx ssl 免密码重启 的方法,非常不错,具有参考借鉴价值,需要的朋友参考下吧 ...

    mrr4272019-11-19