16 авг 2023 Developer :
Пароль на папку на сайте и добавление пользователей скриптом (.htaccess и .htpasswd)
PHP скрипт, с помощью которого можно добавлять пользователей в файл .htpasswd для авторизации...
Подробнее... Канал: PHP
34 0 3 0
Комментарии (6)
Developer
11 сен 2023
Проблема заключается в том, что .htpasswd файл ожидает, что пароль будет храниться в виде хеша, а не в открытом виде. Ваш код PHP просто добавляет пароль в .htpasswd файл в открытом виде, что не соответствует ожиданиям .htaccess для Basic Authentication. Для того чтобы исправить это, вы должны хранить хеш пароля, а не сам пароль.
0
Замени весь PHP код на этот:
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$username = $_POST['username'];
$password = $_POST['password'];
$htpasswdFile = '.htpasswd'; // Путь к файлу .htpasswd
$userEntry = $username . ':' . $password . PHP_EOL;
file_put_contents($htpasswdFile, $userEntry, FILE_APPEND);
echo "<script>alert('ПОЛЬЗОВАТЕЛЬ \"$username\" С ПАРОЛЕМ \"$password\" УСПЕШНО ДОБАВЛЕН')</script>";
}
?>
<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$username = $_POST['username'];
$password = $_POST['password'];
$htpasswdFile = '.htpasswd'; // Путь к файлу .htpasswd
$userEntry = $username . ':' . $password . PHP_EOL;
file_put_contents($htpasswdFile, $userEntry, FILE_APPEND);
echo "<script>alert('ПОЛЬЗОВАТЕЛЬ \"$username\" С ПАРОЛЕМ \"$password\" УСПЕШНО ДОБАВЛЕН')</script>";
}
?>
Для добавления комментариев необходимо авторизоваться
Наследие Хаоса
Начало летописи о первых воинах ступивших на землю....