首页 > 其他分享 >【认证机制】2-Apache配置HTTP Basic Auth

【认证机制】2-Apache配置HTTP Basic Auth

时间:2022-11-26 16:12:44浏览次数:67  
标签:文件 HTTP 配置文件 Auth htaccess Basic apache 目录

1. 基本流程

1.1 使用htpasswd命令创建用户文件

进入 apache 安装目录,使用 htpasswd.exe 创建用户 Admin(密码:password),保存在  apache_auth.htpasswd中(生成文件可以是任意名称和格式,比如user.txt)

1.2 修改主配置(httpd.conf)或者.htaccess文件

加入如下内容:

  • AuthType Basic
  • AuthName "Access to the staging site"
  • AuthUserFile /path/to/.htpasswd
  • Require valid-user

AuthType 表示认证方式,这里是 basic 认证

AuthName 表示弹出框给出的提示文字,自己定义即可

AuthUserFile 表示认证用户文件的路径

AuthGroupFile 定义包含用户组和组成员的文本文件。组成员用空格分开,如:group1:user1 user2

Require 定义哪些用户或组才能被授权访问,valid-user 表示在AuthUserFile指定的文件中的所有用户都可以访问

如果是在httpd.conf中:

<Directory "D:\wamp64\www\basic_auth">
       AuthType Basic
       AuthName "Login"
       AuthUserFile "D:\wamp64\www\basic_auth\apache_auth.htpasswd"
       Require valid-user
</Directory>

  修改完成后,重启服务器即可启用Basic Auth.

2. 关于.htaccess文件

2.1 简介

.htaccess文件(或者"分布式配置文件"),全称是Hypertext Access(超文本入口)。提供了针对目录改变配置的方法, 即,在一个特定的文档目录中放置一个包含一个或多个指令的文件, 以作用于此目录及其所有子目录。作为用户,所能使用的命令受到限制。管理员可以通过Apache的AllowOverride指令来设置。

参考:htaccess_百度百科 (baidu.com)

2.2 开启.htaccess

看起来.htaccess文件十分方便,但为什么默认是不开启的?百科写的很详细了:

2.2 采用.htaccess文件的优缺点

  • 通常网络管理员采用.htaccess文件来进行用户组的目录权限访问控制。没有必要将所有的HTTPd服务器、配置文件以及目录访问权限全部授权给管理员。利用当前目录的.htaccess文件可以允许管理员灵活的随时按需改变目录访问策略
  • 采用.htaccess的缺点在于:当系统有成百上千个目录,每个目录下都有对应的.htaccess文件时,网络管理员将会对如何配置全局访问策略无从下手。同时,由于.htaccess文件十分被容易覆盖,很容易造成用户上一时段能访问目录,而下一时段又访问不了的情况发生。最后,.htaccess文件也很容易被非授权用户得到,安全性不高

2.3 不推荐使用.htaccess的理由

  • 在/www/htdocs/example目录下的.htaccess文件中放置指令,与在主配置文件中<Directory /www/htdocs/example>段中放置相同指令,效果上是完全等效的。但在性能上,把配置放在主配置文件中更加高效,因为只需要在Apache启动时读取一次但启用,而.htaccess文件不仅在每次文件请求时都读取,而且需要逐个目录查找.htaccess文件(从根目录一直到文件目录, 子目录中的指令会覆盖父目录或者主配置文件中的指令),造成严重的性能下降。

 

 

标签:文件,HTTP,配置文件,Auth,htaccess,Basic,apache,目录
From: https://www.cnblogs.com/victorique-de-blois/p/16927613.html

相关文章

  • 【认证机制】1-Http Basic Auth
    一、简介HTTPBasicAuth是HTTP协议提供的一种简单的挑战应答机制,服务器可以通过该机制从客户机请求认证信息(用户标识和密码)。客户端在授权标头中将身份验证信息凭证(采用......
  • Linux下好用的下载软件(bt,磁力,http,https, stream...)
    https://www.codenong.com/1664311678768348926/下面来看一下Linux有哪些常用又好用的下载工具。XDMXDM(XtremeDownloadManager)是一个免费且功能强大的下载工具,支持简......
  • 第五十八章 CSP的常见问题 - HTTP请求失败
    第五十八章CSP的常见问题-HTTP请求失败HTTP请求失败。无法处理超事件。这是什么意思?当浏览器试图与CSPbroker小程序通信但无法通信时,会发生超级事件错误。这可能与代......
  • 思维导图:HTTP 演化
    思维导图:HTTP演化思路整理当前版本优点当前版本缺点如何优化该版本优化不了的怎么办兼容性问题版本之间的联系相关问题HTTP1.0的问题?HTTP/1.1版本比1.0版本多了哪些特......
  • Servlet-urlpartten配置、HTTP-概述
    Servlet-urlpartten配置Servlet相关配置1.urlpartten:Servlet访问路径1.一个Servlet可以定义多个访问路径:@WebServlet({"/d4","/dd4","/ddd4"})......
  • IDEA插件List of plugins was not loaded for following hosts: http://plugins.jetbr
    IDEA插件市场点开资源库后报错:Listofpluginswasnotloadedforfollowinghosts:http://plugins.jetbrains.com。解决办法:File-Settings-Plugins-Browserepositori......
  • 创建自己的https证书
    使用mkcert工具创建证书1、下载mkcert工具,下载地址如下:mkcert工具下载2、解压后运行https本地证书生成工具.bat(文件上点鼠标右键,以管理员身份运行)生成的证书在C:\Users......
  • Http协议
    http协议响应协议报文/***http响应协议的具体格式**HTTP/1.1200ok状态行*Content-Type:text/html;charset=ISO-8859-1......
  • 一个 TCP 连接可以发多少个 HTTP 请求?
    曾经有这么一道经典面试题:从URL在浏览器被输入到页面展现的过程中发生了什么?相信大多数准备过的同学都能回答出来,但是如果继续问:收到的HTML如果包含几十个图片标签,这些......
  • Decompressing GZip Stream from HTTPClient Response
    DecompressingGZipStreamfromHTTPClientResponse回答1JustinstantiateHttpClientlikethis:HttpClientHandlerhandler=newHttpClientHandler(){Auto......