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 相关文章推荐
用IE远程创建Mysql数据库的简易程序
Oct 09 PHP
PHP foreach循环使用详解与实例代码
May 08 PHP
php 各种应用乱码问题的解决方法
May 09 PHP
使用PHP curl模拟浏览器抓取网站信息
Oct 28 PHP
Windows中使用计划任务自动执行PHP程序实例
May 09 PHP
php使用$_POST或$_SESSION[]向js函数传参
Sep 16 PHP
php实现TCP端口检测的方法
Apr 01 PHP
PHP中JSON的应用技巧
Oct 10 PHP
PHP实现文件上传下载实例
Oct 18 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 PHP
ThinkPHP5+Layui实现图片上传加预览功能
Aug 17 PHP
Laravel + Elasticsearch 实现中文搜索的方法
Feb 02 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
Server.HTMLEncode让代码在页面里显示为源代码
2013/12/08 PHP
php简单计算年龄的方法(周岁与虚岁)
2016/12/06 PHP
thinkPHP框架实现生成条形码的方法示例
2018/06/06 PHP
Laravel Eloquent分表方法并使用模型关联的实现
2019/11/25 PHP
DOM 基本方法
2009/07/18 Javascript
javascript for循环从入门到偏门(效率优化+奇特用法)
2012/08/01 Javascript
javascript按位非运算符的使用方法
2013/11/14 Javascript
自定义的一个简单时尚js下拉选择框
2013/11/20 Javascript
给事件响应函数传参数的四种方式小结
2013/12/05 Javascript
浅谈javascript 函数内部属性
2015/01/21 Javascript
js实现二级菜单渐隐显示
2015/11/03 Javascript
jQuery on()绑定动态元素出现的问题小结
2016/02/19 Javascript
jQuery操作iframe中js函数的方法小结
2016/07/06 Javascript
微信小程序 图片加载(本地,网路)实例详解
2017/03/10 Javascript
利用Three.js如何实现阴影效果实例代码
2017/09/26 Javascript
javascript匿名函数中的'return function()'作用
2018/10/15 Javascript
微信小程序实现的动态设置导航栏标题功能示例
2019/01/31 Javascript
解决layer图标icon不加载的问题
2019/09/04 Javascript
layui table 复选框跳页后再回来保持原来选中的状态示例
2019/10/26 Javascript
Python学习笔记_数据排序方法
2014/05/22 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
python实现傅里叶级数展开的实现
2018/07/21 Python
Python捕获异常堆栈信息的几种方法(小结)
2020/05/18 Python
Python实现异步IO的示例
2020/11/05 Python
用 Django 开发一个 Python Web API的方法步骤
2020/12/03 Python
英国首屈一指的票务公司:See Tickets
2019/05/11 全球购物
环境工程大学生自荐信
2013/10/21 职场文书
客服部班长工作责任制
2014/02/25 职场文书
给学校的建议书
2014/03/12 职场文书
导游个人求职信
2014/04/25 职场文书
IT工程师岗位职责
2014/07/04 职场文书
初中教师个人总结
2015/02/10 职场文书
锅炉工岗位职责
2015/02/13 职场文书
2016应届毕业生实习心得体会
2015/10/09 职场文书
幼儿体育课教学反思
2016/02/16 职场文书
HTML中table表格拆分合并(colspan、rowspan)
2021/04/07 HTML / CSS