用 PHP 进行 HTTP 认证,Basic Auth
实现基本的简单Basic Auth认证。
php手册
可以用 header() 函数来向客户端浏览器发送“Authentication Required”信息,使其弹出一个用户名/密码输入窗口。当用户输入用户名和密码后,包含有 URL 的 PHP 脚本将会加上预定义变量 PHP_AUTH_USER,PHP_AUTH_PW 和 AUTH_TYPE 被再次调用,这三个变量分别被设定为用户名,密码和认证类型。预定义变量保存在 $_SERVER 数组中。
public function __construct() {if (!isset($_SERVER['PHP_AUTH_USER'])) {header('WWW-Authenticate: Basic realm="Zello"');header('HTTP/1.0 401 Unauthorized');echo '您必须登录!';exit;}else{$valid_passwords = array ("admin" => "123456");$valid_users = array_keys($valid_passwords);$user = $_SERVER['PHP_AUTH_USER'];$pass = $_SERVER['PHP_AUTH_PW'];$validated = (in_array($user, $valid_users)) && ($pass == $valid_passwords[$user]);if (!$validated) {header('WWW-Authenticate: Basic realm="My Realm"');header('HTTP/1.0 401 Unauthorized');die ("Not authorized");}}
}
效果图
用 PHP 进行 HTTP 认证,Basic Auth相关推荐
- Nginx配置Basic Auth登录认证的实现方法
这篇文章主要介绍了Nginx配置Basic Auth登录认证的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 有时候我们通过nginx搭建了一台文件服务器, 一般 ...
- Rest Api 项目添加 Basic Auth 认证
title: Rest Api 项目添加 Basic Auth 认证 date: 2022-10-10 22:09 tags: [Java,Spring Boot,Rest Api,Basic Aut ...
- Nginx下配置Http Basic Auth
nginx basic auth指令 第一条语句: 语法: auth_basic string | off; 默认值: auth_basic off; 配置段: http ...
- authentication java_HTTP基本认证(Basic Authentication)的JAVA实例代码
大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候浏览器会弹出一个登录验证的对话框,如下图,这就是使用HTTP基本认证. 下面来看看一看这个认证的工作过程: 第一步:客户端发送h ...
- kong插件应用(熔断 限流,黑白名单,认证(basic,key,jwt,hmac,),授权,加密,zipkin链路跟踪,日志, prometheus可视化, 爬虫控制插件)
全栈工程师开发手册 (作者:栾鹏) 架构系列文章 kong安装部署以及kong-dashboard参考:https://blog.csdn.net/luanpeng825485697/article/ ...
- 微信小程序中通过Basic Auth传递token
npm导入用于Base64加密的工具包js-base64 // package.js "dependencies": {"js-base64": "^ ...
- 【HTTP】HTTP Authorization 之 Basic Auth 和 X-Auth-Token
Basic Authorization 认证方法 https://segmentfault.com/a/1190000017563615 HTTP Basic Authorization https: ...
- 基于 Traefik 的 Basic Auth 配置
前言 Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易. Traefik可以与现有的多种基础设施组件(Docker.Swarm模式.Kubernetes.Marathon. ...
- Basic Auth 和 OAuth的区别
开放平台有两种认证方式,一种是Basic Auth,一种是OAuth. 关于OAuth1,OAuth2的异同 移步->> https://blog.csdn.net/qq_1502829 ...
最新文章
- python二级多少分过_python考级有几个级别
- servlet-------------jsp 地址栏变化
- java 不知道类名_Java 中获取类名的三种方法,你知道几种?
- 写过Mybatis插件?那说说自定义插件是如何加载的吧?
- hrbust1841再就业(状态压缩dp)
- 林鹏:解析P2P金融安全风险
- 关于jinja2的{{...|safe}}过滤器
- 移动端根据设计稿宽度适配 px转换相对单位rem
- 员工的不幸?还是公司的悲哀?
- 小米wifi linux 客户端下载,小米无线wifi安装_小米无线wifi客户端下载[最新版]-下载之家...
- 麟龙指标通达信指标公式源码_通达信仿麟龙决策曲线指标公式(选股公式/源码)...
- 名师出高徒,我相信努力的我,会是高徒中的一员。
- cyclone小知识(二)——cyclone加载扫描工程的数据
- 一线顶级互联网公司offer的成功经验【转自IT面试】
- 微信公众号——网页授权
- 【Unity国际版下载地址】
- STM32+LTC6804/LTC6811采集电压温度电流/BMS储能采集板
- ERP的实施--把握三大计划
- Whale帷幄 - 客户画像什么意思 客户画像精准营销管理系统
- 使用css3绘制太极
热门文章
- jQuery.Deferred对象
- 计算机软件的层次结构图,用Word2007制作出精美的层次结构图
- FM,FMM,deepFFM模型总结,深度排序模型
- 如何克服自己懒惰的坏习惯?
- c语言闯关考试题讲解,程序员面试闯关(二):数据结构考点与细节分析
- 网站url后带spm参数的作用
- C3: 古典概率/几何概率/概率定义及性质/条件概率
- 从最硬核买家秀,读懂华为数据中心网络的智能纪元
- ARIMA(Autoregressive Integrated Moving Average Model)
- 手把手教你使用R语言做LASSO 回归