php创建基本身份认证站点的方法详解


Posted in PHP onJune 08, 2013

 默认情况下,大多数web服务器一般被配置为匿名访问,也即为,用户在访问服务器上的信息时一般不会被要求提示标识信息。匿名访问意味着用户不使用用户名和密码登陆就可以访问网站。这也是绝大多数公共网站所使用的配置。
在Apache的配置文件“httpd.conf”中,默认被配置为匿名访问(如下):

<directory "C:/program files/Apache software foundation/apache2.2/htdocs">
  Options Indexes FollowSymLinks Includes
  AllowOverride None
  Order allow,deny
  Allow from all
</Directory>

--------------------------------------------------------------------------------
要强制浏览器使用基本身份认证,必须传递一个WWW-Authenticate字段,例如下边的代码使用header()函数来要求客户端使用BASIC验证,它在HTTP消息报头中增加一个WWW-Authenticate字段:
header("WWW-Authenticate:BASIC Realm=My Realm");
--------------------------------------------------------------------------------
下边写一个使用
<?php
if(!isset($_SERVER['PHP_AUTH_USER'])){
header("WWW-Authenticate:BASIC Realm=My Realm");
header("HTTP/1.0 401 Unauthorized");
echo("账号/密码错误!");
exit;
}else{
/*获取用户名,密码进行验证*/
$user=$_SERVER['PHP_AUTH_USER'];
$pwd=$_SERVER['PHP_AUTH_PW'];
if($user=="admin"&&$pwd="password"){
echo "通过验证";
}else{
header("HTTP/1.0 401 Unauthorized");
echo "账号/密码错误!";
exit;
}
}
?>

PHP 相关文章推荐
php下图片文字混合水印与缩略图实现代码
Dec 11 PHP
简单的PHP留言本实例代码
May 09 PHP
PHP实例分享判断客户端是否使用代理服务器及其匿名级别
Jun 04 PHP
ThinkPHP之import方法实例详解
Jun 20 PHP
Laravel中使用阿里云OSS Composer包分享
Feb 10 PHP
Ubuntu下安装PHP的mongodb扩展操作命令
Jul 04 PHP
PHP简单判断字符串是否包含另一个字符串的方法
Mar 25 PHP
PHP 生成微信红包代码简单
Mar 25 PHP
php 二维数组时间排序实现代码
Nov 19 PHP
详解cookie验证的php应用的一种SSO解决办法
Oct 20 PHP
PHP PDOStatement::bindValue讲解
Jan 30 PHP
php7 图形用户界面GUI 开发示例
Feb 22 PHP
编写安全 PHP应用程序的七个习惯深入分析
Jun 08 #PHP
编写php应用程序实现摘要式身份验证的方法详解
Jun 08 #PHP
探讨方法的重写(覆载)详解
Jun 08 #PHP
php类常量的使用详解
Jun 08 #PHP
深入分析php中接口与抽象类的区别
Jun 08 #PHP
探讨PHP中this,self,parent的区别详解
Jun 08 #PHP
深入php self与$this的详解
Jun 08 #PHP
You might like
PHP开发中四种查询返回结果分析
2011/01/02 PHP
php foreach循环中使用引用的问题
2013/11/06 PHP
php中使用GD库做验证码
2016/03/31 PHP
php使用number_format函数截取小数的方法分析
2016/05/27 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
PHP文件操作简单介绍及函数汇总
2020/12/11 PHP
网页javascript精华代码集
2007/01/24 Javascript
离开页面时检测表单元素是否被修改,提示保存的js代码
2010/08/25 Javascript
jquery 选项卡效果 新手代码
2011/07/08 Javascript
JS获取并操作iframe中元素的方法
2013/03/21 Javascript
JavaScript 操作table,可以新增行和列并且隔一行换背景色代码分享
2013/07/05 Javascript
Javascript和Java获取各种form表单信息的简单实例
2014/02/14 Javascript
javascript实现倒计时跳转页面
2016/01/17 Javascript
Node.js连接postgreSQL并进行数据操作
2016/12/18 Javascript
canvas绘制的直线动画
2017/01/23 Javascript
babel基本使用详解
2017/02/17 Javascript
详解axios在node.js中的post使用
2017/04/27 Javascript
jQuery zTree树插件动态加载实例代码
2017/05/11 jQuery
AngularJS使用ng-repeat遍历二维数组元素的方法详解
2017/11/11 Javascript
Bootstrap table表格初始化表格数据的方法
2018/07/25 Javascript
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
python基础教程之匿名函数lambda
2017/01/17 Python
Python实现的本地文件搜索功能示例【测试可用】
2018/05/30 Python
python 实现对数据集的归一化的方法(0-1之间)
2018/07/17 Python
python实现二维数组的对角线遍历
2019/03/02 Python
详解Python的循环结构知识点
2019/05/20 Python
基于python实现的百度音乐下载器python pyqt改进版(附代码)
2019/08/05 Python
Python object类中的特殊方法代码讲解
2020/03/06 Python
python能自学吗
2020/06/18 Python
美国知名的百货清仓店:Neiman Marcus Last Call
2016/08/03 全球购物
Linux机考试题
2015/07/17 面试题
见习期自我鉴定
2013/11/07 职场文书
化工操作工岗位职责
2014/04/29 职场文书
国贸专业毕业求职信
2014/06/11 职场文书
2014年绩效考核工作总结
2014/12/11 职场文书
公司开业致辞
2015/07/29 职场文书