在某些特定的环境下,我们希望nginx下的web站点在访问时需要用户输入账户密码才能访问。以便拒绝那些不速之客。

其实,配置起来也很简单,按照下面的步骤即可实现。

一、编辑虚拟主机配置文件。

server {
listen 80; //监听端口为80
server_name www.abc.com; //虚拟主机网址
location / {
root sites/www1; //虚拟主机网站根目录
index index.html index.htm; //虚拟主机首页
auth_basic "secret"; //虚拟主机认证命名
auth_basic_user_file /usr/local/nginx/passwd.db; //虚拟主机用户名密码认证数据库
}
#省略其他配置
....
}

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

[root@localhost /]#mkdir /usr/local/nginx
[root@localhost /]#vi /usr/local/nginx/passwd.db
[root@localhost /]# htpasswd -c /usr/local/nginx/passwd.db admin //创建认证信息,admin 为认证用户名
New password: ******* //输入认证密码
Re-type new password: ******** //再次输入认证密码
Adding password for user admin
[root@localhost /]# chmod 400 /usr/local/nginx/passwd.db //修改网站认证数据库权限
[root@localhost /]# chown nginx. /usr/local/nginx/passwd.db //修改网站认证数据库属主和属组
[root@localhost /]# cat /usr/local/nginx/passwd.db //可以看到通过htpasswd生成的密码为加密格式
admin:x/J1o94NgIV2k

三、重新启动nginx即可生效。

service nginx reload

通过上面的三个步骤即可完成在nginx下实现访问web网站密码认证保护的功能。

如何在nginx下实现访问web网站密码认证保护的功能的更多相关文章

  1. 基于nginx的配置网站密码认证

    在nginx配置服务中,创建访问网站密码认证. 1)需要ngx_http_auth_basic_module模块 语法: Syntax: auth_basic string | off; Defaul ...

  2. Apache和Nginx下禁止访问特定的目录或文件

    大家是否测试Apache做了目录禁止浏览后,目录下面的txt文件还是可以显示里面的内容的.例如:http://www.domain.com/test/此访问会报403错误,但是如果test下有很多tx ...

  3. nginx下如何l在网站目录的二级目录下url重写的方法

    以我新项目为例子,该项目要求用laravel来做,因此我把整个项目丢到一个叫laravel的文件夹里面了,目录就变成c:/nginx/html/laravel了,然后发现只能通过localhost/l ...

  4. 如何在Nginx下配置PHP程序环境

    1.nginx与PHP的关系 首先来看nginx与php的关系, FastCGI的关系(而不是像apache那样安装成nginx的模块) FastCGI的意思是, 快速的通用网关接口:CGI Comm ...

  5. nginx下禁止访问robots.txt的设置方法

    关于robots.txt文件:搜索引擎通过一种程序robot(又称spider),自动访问互联网上的网页并获取网页信 息.您可以在您的网站中创建一个纯文本文件robots.txt,在这个文件中声明该网 ...

  6. 手动上传图片到nginx下可访问,程序上传后访问图片报403

    1. 首先查看文件权限 2. 初步确定是服务器权限问题 2.1 解决方案一:更改文件权限 2.2 解决方案二:修改nginx运行用户 1. 首先查看文件权限 #指令如下 ls -l 2. 初步确定是服 ...

  7. Nginx之让用户通过用户名密码认证访问web站点

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

  8. Linux小技巧之:两种方法统计访问web网站的前10个IP

    获得访问前10位的IP地址: 10.46.170.7 218.202.70.147 77.72.83.87 5.39.217.107 185.197.74.234 185.197.74.231 第二种 ...

  9. CentOS 6.4 i386 版本安装 FastDFS、使用Nginx作为文件访问WEB服务器

    安装环境:1. CentOS-6.4-i3862. FastDFS_v4.063. fastdfs-nginx-module_v1.154. Nginx-1.5.6(安装见此)5. libevent- ...

随机推荐

  1. linux 使用ssh-keygen生成ssh公钥和私钥

    linux一般为在自己的家目录下建立 .ssh 文件夹 中生成密钥 /home/username/.ssh 生成的命令如下: ssh-keygen -t rsa -C "yourname@y ...

  2. 第三篇 -- XML Schema

    验证XML文档是否符合议定的XML结构有两种方法,分别是DTD模式与XML Schema.本文主要介绍XML Schema. 一.XML Schema的优点 XML Schema基于XML,没有专门的 ...

  3. canvas详解---矩形绘制

    首先,就上述绘制弧线的章节进行一个小小的补充: 如果我们使用了context.beginPath();紧接着后面的context.moveTo(x,y),可以改为context.lineTo(x,y) ...

  4. Linux-导入已安装的Linux系统

    之前在安装过一个Linux系统,由于重装电脑需要将之前安装的系统重新移动到VMWare中,让Linux系统能够重新运行起来,这样也省去了每次重新安装系统的麻烦. 废话不多说,咱们直接看是如何做? 1) ...

  5. Ruby——报错总结

    前言 记录ruby的一些报错 错误 Could not find a valid gem 'pumagem' (>= 0) in any repository ERROR: Could not ...

  6. servlet 容器与servlet

    servlet代表应用 解析Tomcat内部结构和请求过程 https://www.cnblogs.com/zhouyuqin/p/5143121.html servlet的本质是什么,它是如何工作的 ...

  7. springboot 打包插件spring-boot-maven-plugin打包机制及内部结构分析

    今日思语:I miss you? 何解? 我错过你了?我想你了? 当下许多公司都会选择使用springboot作为服务应用开发框架,springboot框架提供了一套自己的打包机制,是通过spring ...

  8. Boggle Game

    Description Given a board which is a 2D matrix includes a-z and dictionary dict, find the largest co ...

  9. (7)树莓派读物USB摄像头

    https://blog.csdn.net/qq_42403190/article/details/90453305 创建文件 camera.py 简单读取 #!/usr/bin/env python ...

  10. ASP.NET Core Docker Nginx分权,多网站部署

    https://www.cnblogs.com/esofar/p/10694319.html