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对MongoDB[NoSQL]数据库的操作
Mar 01 PHP
PHP中操作ini配置文件的方法
Apr 25 PHP
基于php-fpm的配置详解
Jun 03 PHP
PHP APC缓存配置、使用详解
Mar 06 PHP
2个比较经典的PHP加密解密函数分享
Jul 01 PHP
为PHP安装imagick时出现Cannot locate header file MagickWand.h错误的解决方法
Nov 03 PHP
PHP SPL标准库之文件操作(SplFileInfo和SplFileObject)实例
May 11 PHP
php实现向javascript传递数组的方法
Jul 27 PHP
php求今天、昨天、明天时间戳的简单实现方法
Jul 28 PHP
thinkPHP框架对接支付宝即时到账接口回调操作示例
Nov 14 PHP
PHP 实现缩略图
Mar 09 PHP
PHP使用QR Code生成二维码实例
Jul 07 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
连接到txt文本的超链接,不直接打开而是点击后下载的处理方法
2009/07/01 PHP
PHP中array_slice函数用法实例详解
2014/11/25 PHP
Laravel 5框架学习之表单验证
2015/04/08 PHP
php封装的smartyBC类完整实例
2016/10/19 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
PHP实现的用户注册表单验证功能简单示例
2019/02/25 PHP
php+websocket 实现的聊天室功能详解
2020/05/27 PHP
javascript学习笔记(七)利用javascript来创建和存储cookie
2011/04/08 Javascript
JQuery实现用户名无刷新验证的小例子
2013/03/22 Javascript
ExtJS下书写动态生成的xml(兼容火狐)
2013/04/02 Javascript
读取input:file的路径并显示本地图片的方法
2013/09/23 Javascript
Jquery实现的tab效果可以指定默认显示第几页
2013/10/16 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
Js与Jq 获取页面元素值的方法和差异对比
2015/04/30 Javascript
JavaScript判断按钮被点击的方法
2015/12/13 Javascript
详解js实现线段交点的三种算法
2016/08/09 Javascript
node+express制作爬虫教程
2016/11/11 Javascript
JS作用域深度解析
2016/12/29 Javascript
微信小程序 video详解及简单实例
2017/01/16 Javascript
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
jQuery实现表格隔行换色
2018/09/01 jQuery
vue-vuex中使用commit提交mutation来修改state的方法详解
2018/09/16 Javascript
Openlayers实现地图全屏显示
2020/09/28 Javascript
[37:47]IG vs Winstrike 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
2014/04/25 Python
编写Python CGI脚本的教程
2015/06/29 Python
Python自动化运维和部署项目工具Fabric使用实例
2016/09/18 Python
Python实现的生产者、消费者问题完整实例
2018/05/30 Python
Python Websocket服务端通信的使用示例
2020/02/25 Python
Python unittest基本使用方法代码实例
2020/06/29 Python
巴西最大的家电和百货零售商:Casas Bahia
2016/11/22 全球购物
世界领先的在线地板和建筑材料批发商:BuildDirect
2017/02/26 全球购物
2014党委书记四风对照检查材料思想汇报
2014/09/21 职场文书
2014年司法局工作总结
2014/12/11 职场文书
详解JSON.parse和JSON.stringify用法
2022/02/18 Javascript
OpenCV实现常见的四种图像几何变换
2022/04/01 Python