中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 操作系统 > 服务器 > Windows服务器
Apache服务器的用户认证(3)
作者:未知 时间:2004-07-24 12:12 出处:Yesky 责编:chinaitpower
              摘要:暂无
二.    采用数据库存储 

目前,Apache、PHP4、MySQL三者是Linux下构建Web网站的最佳搭档,这三个软件都是免费软件。将三者结合起来,通过HTTP协议,利用PHP4和MySQL,实现Apache的用户认证功能。 

只有在PHP4以Apache的模块方式来运行的时候才能进行用户认证。为此,在编译Apache时需要加入PHP4模块一起编译。假设PHP4作为Apache的模块,编译、安装Apache到/usr/local/apache目录,编译、安装MySQL到/usr/local/mysql目录。然后进行下面的步骤:  

1.在MySQL中建立一个数据库member,在其中建立一个表users,用来存放合法用户的用户名和密码。 

1)用vi命令在/tmp目录建立一个SQL脚本文件auth.sql,内容为: 

drop database if exists member; 

create database member; 

use member; 

create table users ( 

username char(20) not null, 

password char(20) not null, 

); 

insert into users values("user1",password("1234")); 

insert into users values("user2",password("5678")); 

2)启动MySQL客户程序mysql,执行上述SQL脚本文件auth.sql的命令, 在表users中增加两个用户的记录。 

#mysql -u root -pmypwd</tmp/auth.sql 

2.编写一个PHP脚本头文件auth.inc,程序内容为: 

?php 

function authenticate() { 

Header(WWW-authenticate: basic realm="会员区"); 

Header(HTTP/1.0 401 Unauthorized); 

echo "你必须输入正确的用户名和口令。n"; 

exit; 

function CheckUser($uname, $pwd) { 

if ($uname == "" || $pwd == "") return 0; 

$query = "SELECT username,password FROM users WHERE username=$uname and password=password($pwd)"; 

$db_id = mysql_connect(localhost, oot, mypwd); 

mysql_select_db(member,$db_id); 

$result = mysql_query($query, $db_id); 

$num=mysql_num_rows($result); 

mysql_close($db_id); 

if ($num>0) { 

return 1; // 有效登录 

} else { 

return 0; // 无效登录 

?> 

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有