LinkStory Wiki
【WP】Basic認証のかけ方
<?php
//functions.phpに記述
function basic_auth($auth_list,$realm="Restricted Area",$failed_text="認証に失敗しました"){
if (isset($_SERVER['PHP_AUTH_USER']) and isset($auth_list[$_SERVER['PHP_AUTH_USER']])){
if ($auth_list[$_SERVER['PHP_AUTH_USER']] == $_SERVER['PHP_AUTH_PW']){
return $_SERVER['PHP_AUTH_USER'];
}
}
header('WWW-Authenticate: Basic realm="'.$realm.'"');
header('HTTP/1.0 401 Unauthorized');
header('Content-type: text/html; charset='.mb_internal_encoding());
die($failed_text);
}
//header.phpに記述
if(!is_page('page ID')): //Basic認証を省きたい場合は必要
if(is_home() || is_single() || is_page()): //Basic認証を掛けたいページID
$userArray = array(
"koukoku55" => "ob3266" // ユーザー名とパスワード
);
basic_auth($userArray);
//上記の記述でできない場合は、以下を.htaccessに記述すること
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]