Intereting Posts
Разъяснения по уязвимостям XXE во всех версиях PHP Можем ли мы иметь язык, отличный от английского, в URL? Невозможно найти сценарий, перенаправляющий мобильный трафик в собственном веб-сайте WP Как написать вывод браузера в файл журнала с помощью PHP? Перезагрузите данные MySQL внутри DIV с помощью Ajax PHP – хранилище таблиц Azure с более чем 1000 объектами Пропустить композитор Требование PHP вставлять данные в MYSQL с помощью массива PHP Обнаружение кодировки файлов в PHP Обновление или открытие страницы вставляет пустые данные в мою базу данных! PHP, From Страница смешанного контента: запрошена небезопасная ошибка стилей Рассчитайте расстояние Google от входного адреса и всего адреса от сервера MySQL с помощью jQuery ajax.get Создайте сводную таблицу сравнения на основе дат сайта PHP показывает вывод foreach на экран, для каждого элемента Что мне нужно для совместимого заголовка электронной почты

Как я могу защитить паролем загрузку бинарного файла?

Я хотел бы создать очень простой php-протектор в произвольном двоичном файле, где пользователь вводит пароль, и файл загружается на свой компьютер, но они должны вводить пароль каждый раз, когда они хотят загрузить.

В первом ответе на вопрос « Легкий способ защиты паролем php-страницы» строка include("secure.html"); похоже, требует, чтобы файл должен отображаться ascii, отображаемый браузером.

Есть ли способ защитить двоичный файл, скажем, foo.bin с тем же уровнем простоты (и с аналогичной ограниченной степенью безопасности)?

Установите папку в папку, где хранится ваш файл, чтобы запретить все, а затем с помощью файла чтения вы должны иметь доступ к нему.

 <?php if (!empty($_POST)) { $user = $_POST['user']; $pass = $_POST['pass']; if($user == "admin" && $pass == "admin") { $file = 'path/to/file'; if (file_exists($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); ob_clean(); flush(); readfile($file); exit; } } } ?> <form method="POST" action=""> User <input type="TEXT" name="user"></input> Pass <input type="TEXT" name="pass"></input> <input type="submit" name="submit"></input> </form>