Скрыть URL для загрузки

Я пытаюсь сделать URL-адрес загружаемого PDF-документа невидимым для пользователя, чтобы они не могли получить к нему доступ нигде. Мне нужно скрыть URL-адрес в левом нижнем углу страницы (при наведении мыши) и URL-адрес из адресной строки браузера при их открытии. Мне нужно, чтобы он работал на всех браузерах.

Мой HTML выглядит так:

<a href="http://www.example.com/files/pdf/a34501.pdf">View PDF</a> 

И ссылка должна выглядеть так:

Просмотр PDF

Причина заключается в том, что пользователь должен предоставить код для загрузки своего документа, но если он сможет увидеть URL-адрес, он может легко загрузить чужие документы (им нужно только изменить цифру в части «a34501.pdf»).

Я прочитал что-то об использовании функции JavaScript для шифрования URL-адреса или использования внешнего файла PHP. Однако я не знаю, как это сделать.

Благодарю.

Related of "Скрыть URL для загрузки"

Скрытие URL-адреса будет искажать наименее высокотехнологичных пользователей, но не всех, кто хочет загрузить ваши файлы и получить минимальные технические знания, если вам нужно скрыть свои файлы за кодом (или оплатить стену), вы можете использовать скрипт PHP который аутентифицирует пользователя и выплескивает соответствующий файл, маленький пример выглядит следующим образом:

 if($validUser) { $path = $fileName; $size = filesize($path); $fp = fopen($path, "rb"); $content = fread($fp, $size); fclose($fp); header("Content-length: ".$size); header("Content-type: application/octet-stream"); header("Content-disposition: attachment; filename=".$fileName.";" ); echo $content; } exit(); 

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

Вы можете использовать php-скрипт для предоставления документа, в то же время позволяя php аутентифицировать информацию о сеансе пользователя / etc.

Процесс выглядит следующим образом:

  1. Пользователь вводит уникальный код (после дополнительной проверки подлинности, необходимой для проверки пользователя).
  2. Сгенерирована уникальная ссылка документа, например: http://domain/download.php?file=58afg71057ga82157 (пример)
  3. download.php проверяет пользовательский запрос на сохраненную информацию о сеансе – если все проверяется, он отправляет заголовок файла () и передает содержимое файла.

Это базовое учебное пособие по загрузке файлов предоставляет основные основы предоставления файла таким образом. Вам нужно будет улучшить этот базовый учебник, но он должен дать вам представление о том, как работает этот процесс.

Предложения:

  • Используйте уникальный «ключ» для каждого пользователя (позволяющий повторному загрузке одного и того же пользователя); или,
  • Одноразовый ключ, который позволяет только одну загрузку; или,
  • Требовать аутентификацию пользователей, чтобы вы знали, должны ли они «разрешены» использовать ключ.
  • Не используйте «filename.ext», чтобы найти файл для загрузки, либо сохранить имя в сеансе, либо использовать уникальный идентификатор, хранящийся в базе данных.
  • Не просто скопируйте вставку пример сценариев, они часто крайне небезопасны.