Как защитить файл admin.php

84
25 мая 2021, 04:40

есть в папке public_html файл с именем admin.php нужно защитить его логин:пароль

писал так .HTACCESS :

<FilesMatch "admin.php">
AuthName "Member Only"
AuthType Basic
AuthUserFile /home/logincpanel/.htpasswd
require valid-user
</FilesMatch>

для .htpasswd user:passs

Загрузил на сервер два этих файла в public_html и

получил Internal Server Error

Прочитал коментарий: "После переноса файлов в целевую директорию надо отредактировать путь к файлу .htpasswd в .htaccess . Если из примера, то надо добавить secret-files в путь. Чтобы было: //secret-files /.htpasswd Иначе словите Internal Server Error"

не совсем понял что надо сделать?

Answer 1

.htaccess:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /
    RewriteCond %{HTTP:Authorization} ^Basic.*
    RewriteRule (.*) admin.php?http=%{HTTP:Authorization} [QSA,L]
</IfModule>

admin.php:

<?php
$login = 'admin';
$password = 'admin';
function auth($login, $password) {
   $user = [];
   if (preg_match('/^Basic\s+(.*)$/i', filter_input(INPUT_GET, 'http'), $user)) {
        list($user, $pass) = explode(':', base64_decode($user[1]));
        if ($user === $login && $pass === $password) {
            return [$login, $password];
        }
   }
   return [];
}

if ($auth = auth($login, $password)) {
    var_dump($auth);
} else {
    header('WWW-Authenticate: Basic realm="Restricted Area"');
    header('HTTP/1.1 401 Unauthorized');
    exit("Access denied.");
}
READ ALSO
419 Page Expired после введения логина и пароля для входа в Voyager admin panel. Что делать?

419 Page Expired после введения логина и пароля для входа в Voyager admin panel. Что делать?

Только что установил фреймворк laravel(хостинг regru), настроил

168
проблема установки php-fpm на Centos7

проблема установки php-fpm на Centos7

Доброго времени суток! Возникла проблема следующего характера: При установке php-fpm на OC Centos7 выдает следующее

207
Parse error: syntax error, unexpected &#39;:&#39;, expecting &#39;]&#39;

Parse error: syntax error, unexpected ':', expecting ']'

Вот фрагмент кода:

155
Импорт из csv в php

Импорт из csv в php

как исправить вывод вместо русских символов вот такое

130