запретить прямой доступ к изображениям, но разрешить лайтбокс (fancybox 2)

Есть пара предложений, но я не знаю, какой из них мне следует использовать, или какой будет лучше для меня. Звучало так, будто вы на самом деле закодировали каждое изображение в виде строки, а затем показали это. Другое звучало как настройка пользователя / входа в систему, а затем диктование местоположения изображения по идентификатору пользователя, но я хочу избежать чего-то такого сложного.

По сути, все мои фотографии организованы в подпапки, в главной папке под названием «фотографии». Я использую скрипт PHP, который я написал, чтобы просканировать этот каталог и создать все галереи из подкаталогов (см. Мой пост об этом Вот).

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

Спасибо за любые рекомендации.

0

Решение

Кодирование изображения в виде строки является наиболее безопасным вариантом, поскольку только ваши скрипты будут иметь доступ к вашим изображениям, вы можете разместить их вне корневого веб-каталога. И само кодирование не так сложно

$path = 'path/to/image.jpg';
$type = pathinfo($path, PATHINFO_EXTENSION);
$data = file_get_contents($path);
$base64 = 'data:image/' . $type . ';base64,' . base64_encode($data);

echo '<img src="' . $base64 . '" />';
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]