আপনার মডিউল ফাইলে একটি মডিউল তৈরি করুন এবং নিম্নলিখিত কোডটি পেস্ট করুন:
<?php
/**
* Implementation of hook_boot().
*
* Ask for user credentials and try to authenticate.
*/
function foo_boot() {
require_once DRUPAL_ROOT . '/includes/password.inc';
if (isset($_SERVER['PHP_AUTH_USER']) && isset($_SERVER['PHP_AUTH_PW'])) {
$query = "SELECT pass FROM {users} WHERE name = :name";
$result = db_query($query, array(':name' => $_SERVER['PHP_AUTH_USER']));
$account = new stdClass();
foreach ($result as $row) {
$account->pass = $row->pass;
}
if (isset($account->pass)) {
if (user_check_password($_SERVER['PHP_AUTH_PW'], $account)) {
return;
}
}
}
header('WWW-Authenticate: Basic realm="Development"');
header('HTTP/1.0 401 Unauthorized');
exit;
}
এটি HTTP প্রমাণীকরণ ব্যবহার করে এবং একটি বৈধ ব্যবহারকারীর নাম এবং পাসওয়ার্ডের জন্য ড্রুপাল ডেটাবেস পরীক্ষা করে।
পিএইচপি সিএলআই, ড্রশ বা ক্রোন নিয়ে আপনার যদি কোনও সমস্যা হয় তবে আপনি নীচের কোডটি হুকটিতে যুক্ত করতে পারেন:
// Allow cron through
if (basename($_SERVER['PHP_SELF']) == 'cron.php') {
return;
}
// Allow PHP CLI/Drush through
if (isset($_SERVER['argc'])) {
if (php_sapi_name() == 'cli' || (is_numeric($_SERVER['argc']) && $_SERVER['argc'] > 0)) {
return;
}
}