Nginx怎么让用户通过用户名密码认证访问web站点

发布时间 - 2023-05-11 00:00:00    点击率:

实验环境:

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

使用nginx下虚拟主机的搭建

www1.rsyslog.org进行测试。

www1.rsyslog.org 192.168.100.107

dns1 192.168.100.102

一、查看当前系统参数

[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)

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

[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命令生成用户名及对应密码数据库文件。

[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服务

[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  # 虚拟主机  # 配置文件  # 重启  # 进行测试  # 可以看到  # 别忘了  # 首页  # 密码为  # 浏览网页  # 数据库文件 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 打开php文件提示内存不足_怎么调整php内存限制【解决方案】  高端网站建设与定制开发一站式解决方案 中企动力  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  如何在VPS电脑上快速搭建网站?  如何在云主机快速搭建网站站点?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  如何在IIS管理器中快速创建并配置网站?  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  千库网官网入口推荐 千库网设计创意平台入口  如何在建站之星绑定自定义域名?  Java类加载基本过程详细介绍  如何在IIS中新建站点并配置端口与物理路径?  如何在阿里云香港服务器快速搭建网站?  创业网站制作流程,创业网站可靠吗?  如何快速建站并高效导出源代码?  Laravel如何使用Livewire构建动态组件?(入门代码)  Laravel如何优化应用性能?(缓存和优化命令)  PHP正则匹配日期和时间(时间戳转换)的实例代码  免费视频制作网站,更新又快又好的免费电影网站?  教你用AI将一段旋律扩展成一首完整的曲子  教你用AI润色文章,让你的文字表达更专业  制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?  Python函数文档自动校验_规范解析【教程】  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  网页设计与网站制作内容,怎样注册网站?  如何在 Pandas 中基于一列条件计算另一列的分组均值  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  Laravel如何实现数据库事务?(DB Facade示例)  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  如何将凡科建站内容保存为本地文件?  如何为不同团队 ID 动态生成多个非值班状态按钮  java ZXing生成二维码及条码实例分享  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  如何在万网开始建站?分步指南解析  在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?  JavaScript常见的五种数组去重的方式  黑客入侵网站服务器的常见手法有哪些?  javascript基本数据类型及类型检测常用方法小结  再谈Python中的字符串与字符编码(推荐)  网站建设要注意的标准 促进网站用户好感度!  Laravel与Inertia.js怎么结合_使用Laravel和Inertia构建现代单页应用  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  专业商城网站制作公司有哪些,pi商城官网是哪个?  nodejs redis 发布订阅机制封装实现方法及实例代码  html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  香港服务器租用每月最低只需15元?  如何在香港免费服务器上快速搭建网站?