php创建基本身份认证站点的方法详解
程序员文章站
2022-05-25 17:37:11
默认情况下,大多数web服务器一般被配置为匿名访问,也即为,用户在访问服务器上的信息时一般不会被要求提示标识信息。匿名访问意味着用户不使用用户名和密码登陆就可以...
默认情况下,大多数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;
}
}
?>
在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;
}
}
?>
上一篇: 诚恳忏悔:每个设计师都对客户撒过的20个谎言与真相
下一篇: python实现百度关键词排名查询