频道直达 - 学院 - 下载 - 交易 - 特效 - 字库 - 手册 -排名-工具- 繁體
网页教学网站开发 设为首页
加入收藏
联系我们
建站搜索: 常用广告代码   用户注册 | 用户登陆
您当前的位置:中国建站之家 -> 网站开发设计技术教程 -> PHP教程 -> 使用PHP3进行HTTP认证

使用PHP3进行HTTP认证

作者:未知  来源:转载  发布时间:2005-7-21 10:36:16  发布人:acx

减小字体 增大字体

只有在PHP以Apache的模块方式运行的时候才可以使用HTTP认证的功能。在Apache的模块PHP脚本中,可以使用Header()函数向客户断浏览器发送一个”Authentication Required”的消息,使浏览器弹出一个用户名/密码(username/password)的输入窗口,当用户输入用户名和密码后,包含PHP脚本的URL将会被再次调用,使用分别代表用户名,密码,和确认方式的$PHP_AUTH_USER, $PHP_AUTH_PW,$PHP_AUTH_TYPE变量。现在只有”BASIC”的确认方式被支持。

在一个页面中强迫用户进行身份认证的代码段的例子如下:

Example 2-1. HTTP 认证举例:

<?php

if(!isset($PHP_AUTH_USER)) {

Header("WWW-Authenticate: Basic realm=\"My Realm\"");

Header("HTTP/1.0 401 Unauthorized");

echo "Text to send if user hits Cancel button\n";

exit;

}

else {

echo "Hello $PHP_AUTH_USER.<P>";

echo "You entered $PHP_AUTH_PW as your password.<P>";

}

?>

除了简单的输出$PHP_AUTH_USER 和 $PHP_AUTH_PW变量的值以外,你还可以检查用户名和密码的合法性,也许是对数据库进行查询,也许是在dbm文件中搜索用户。

当心臭虫成堆的Internet Explorer浏览器,他对Hearders的顺序非常挑剔.所以采用在送出HTTP/1.0 401 header 请求之前送出WWW-Authenticate header请求是一个很好的解决方法。

为了阻止一些人写一些脚本来显示一个经过传统外部机制验证过的页面的密码,采用如下方式:如果这一页面使用外部验证机制,将不会生成PHP_AUTH变量.这样,$REMOTE_USER变量可以被用来表示已经被外部机制验证的用户.

注意,上面的方法并不能防止某些人在同一台服务器上利用无身份验证的URL偷取有身份鉴别的URL的密码。

无论Netscape还是IE,在接到服务器的401回复之后,都将清空本地浏览器窗口的身份验证缓存。这种做法可以有效的使用户登录退出,从而强迫他们再次输入他们的用户名和密码。一些人使用这个方式来实现“超时”注册,或者提供登录退出的按钮。

这种方法不是标准的HTTP基本身份鉴定所必须的,所以您可能从来都不依靠它。使用Lynx进行的测试并没有弄清楚401服务器回应的身份鉴定,所以如果使用“向前”或“向后”功能将打开源文件(只要信用需求还没有被改变)。

虽然已经指出这种语言不能工作在Microsoft的IIS服务器上,但是PHP语言CGI版本将受到IIS的限制。



将本文收藏到QQ书签与更多好友分享
[打 印]
[] [返回上一页] [收 藏]
下一篇文章:使用PHP建立GIF
∷相关文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论...]
精彩推荐
热门文章
· 注册码大全二
· 注册码大全四
· 注册码大全一
· 要10G免费网络硬盘的请进..
· 通过google 赶快来赚美金..
· 注册码大全十
· 头像-qq头像(qq新头像)4..
· 让你轻松架设FTP服务器1..
· 注册码大全三
· 梦幻背景图片7
· 卡通动物图片6
· 网页制作素材-按钮素材2..
· 让你轻松架设FTP服务器5..
· 风景图片8
· 注册码大全九
· 让你轻松架设FTP服务器2..
关注此文读者还看过
· 基于Hibernate和Struts的..
· 腾讯发展互联网创意产业..
· PHP 和 XML: 使用expat函..
· 戴志康做客《在线程序员..
· 中国CN域名进行调整 ICA..
· 如何用ASP创建日志文件
· 通过调用传递(Passing b..
· Flash游戏制作规划与流程..
· PS 就是这样轻松 一步还..
· PHP 编码规范(21)
· 陈天桥解读盛大第二季财..
· 显示数据库中的存储过程..
· Photoshop教程-3D文字
· 侯娟:网游为何攀枝传统..
· Counters 组件参考(三) ..
· Google Apps增加字处理和..
相关文章
· 使用PHP的日期与时间函数提..
· 使用Photoshop绘制一..
· 实用:使用PHP脚本修改Linu..
· 使用Photoshop打造照..
· 使用PHP开发网站过程中你注..
· 使用PHP脚本修改Linu..
· 使用PHP 5.0 轻松解析XML文..
· 使用PHP 5.0 轻松解析XML文..
· 使用PHP 5.0 轻松解析XML文..
· 使用PHP 5.0 轻松解析XML文..
· 使用Photoshop制作环..
· 使用Photoshop制作环..
· BS结构中使用PHP访问ORACLE..
· 如何使用PHP获取网络上文件..
· 使用PHP和XSL stylesheets转..
· 使用php+xslt在windows平台..
关于本站 - 网站帮助 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 人才招聘
网站合作、内容监督、商务咨询:QQ: 9576619
Copyright ? 2005--2008 中国建站之家版权所有
粤ICP备05092265号