Скрыть имена файлов для изображений продуктов

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

3 ответа

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

Таким образом, URL изображения на клиенте будут выглядеть ../Image.php?ID=<something useless>,

Не забудьте установить Content-Type,

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

Переименование файлов и присвоение им случайных имен - самый простой способ.

Если это не вариант, использование внешнего интерфейса PHP, как показывает @SLaks, является вторым по простоте способом. Это немного потребляет ресурсы, но хорошо, если у вас мало трафика.

Если у вас много трафика и вы немного продвинулись в работе с Apache, вы также можете рассмотреть возможность использования RewriteMap, Это заставляет Apache искать подстановки URL из текстового файла, что быстрее, чем передача ресурса через PHP. Это потребует некоторых возни, чтобы заставить это работать, все же.

Другие вопросы по тегам