php創(chuàng)建基本身份認(rèn)證站點的方法詳解
更新時間:2013年06月08日 09:44:21 作者:
本篇文章是對php創(chuàng)建基本身份認(rèn)證站點進行了詳細的分析介紹,需要的朋友參考下
默認(rèn)情況下,大多數(shù)web服務(wù)器一般被配置為匿名訪問,也即為,用戶在訪問服務(wù)器上的信息時一般不會被要求提示標(biāo)識信息。匿名訪問意味著用戶不使用用戶名和密碼登陸就可以訪問網(wǎng)站。這也是絕大多數(shù)公共網(wǎng)站所使用的配置。
在Apache的配置文件“httpd.conf”中,默認(rèn)被配置為匿名訪問(如下):
<directory "C:/program files/Apache software foundation/apache2.2/htdocs">
Options Indexes FollowSymLinks Includes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
--------------------------------------------------------------------------------
要強制瀏覽器使用基本身份認(rèn)證,必須傳遞一個WWW-Authenticate字段,例如下邊的代碼使用header()函數(shù)來要求客戶端使用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”中,默認(rèn)被配置為匿名訪問(如下):
復(fù)制代碼 代碼如下:
<directory "C:/program files/Apache software foundation/apache2.2/htdocs">
Options Indexes FollowSymLinks Includes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
--------------------------------------------------------------------------------
要強制瀏覽器使用基本身份認(rèn)證,必須傳遞一個WWW-Authenticate字段,例如下邊的代碼使用header()函數(shù)來要求客戶端使用BASIC驗證,它在HTTP消息報頭中增加一個WWW-Authenticate字段:
header("WWW-Authenticate:BASIC Realm=My Realm");
--------------------------------------------------------------------------------
下邊寫一個使用
復(fù)制代碼 代碼如下:
<?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;
}
}
?>
相關(guān)文章
PHP實現(xiàn)對數(shù)組簡單求交集,差集,并集功能示例
這篇文章主要介紹了PHP實現(xiàn)對數(shù)組簡單求交集,差集,并集功能,涉及php數(shù)組操作函數(shù)array_diff、array_intersect及array_merge的使用技巧,需要的朋友可以參考下2017-10-10解析phpstorm + xdebug 遠程斷點調(diào)試
本篇文章是對phpstorm + xdebug 遠程斷點調(diào)試進行了詳細的分析介紹,需要的朋友參考下2013-06-06PDO版本問題 Invalid parameter number: no parameters were bound
發(fā)現(xiàn)在客戶的某個PHP版本下,執(zhí)行某類操作的時候,總是會報如下錯誤 Invalid parameter number: no parameters were bound,經(jīng)google,發(fā)現(xiàn)是php版本過低導(dǎo)致2013-01-01