Кэш изображений PHP

У меня есть мини-галерея, которую я создал, и то, что я сделал, было просто использованием FTP, без базы данных, поэтому, когда я загружаю фотографию, она называется «image1.jpg», а затем, если я загружаю другое изображение, она называется «image2.jpg» и так далее. . Ну, если я удаляю изображение1, то изображение2 автоматически переименовывается в изображение1.jpg, и все они переименовываются, если их больше.

Проблема в том, что теперь новое изображение1 показывает старое изображение, если я не очистил кеш. Я нашел мини-решение, чтобы обойти это:

$rand = rand(100,1000);
<img src="images/image1.jpg?<?=$rand;?>">

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

Есть ли лучший способ исправить это?


person Drew    schedule 22.06.2011    source источник
comment
Почему бы просто не оставить имена изображений такими, какие они есть при удалении изображения? Кажется ненужным переименовывать изображения только потому, что вы их удалили.   -  person Kyle Undefined    schedule 23.06.2011
comment
Именно так я называю изображения, когда я их показываю, я просто использую цикл for и подсчитываю, сколько фотографий находится на FTP, а затем легко отображаю их все. У меня нет проблем с изменением кода фотогалереи, если мне нужно, просто хочу посмотреть, есть ли решение для этого метода!   -  person Drew    schedule 23.06.2011
comment
Взгляните на то, что @Jacob написал о заголовках без кеша. Это подход, который вы хотите использовать.   -  person SRM    schedule 23.06.2011


Ответы (1)


Вы не можете помещать заголовки кеша в каталог изображений.

person Jacob Eggers    schedule 22.06.2011
comment
Спасибо Джейкоб. Извините за глупый вопрос, а что конкретно делать? У меня есть следующий код для No-cache: ‹?php header (срок действия: пн, 26 июля 1997 г., 05:00:00 по Гринвичу); заголовок (Cache-Control: без кеша); заголовок (Прагма: без кеша); - person Drew; 23.06.2011
comment
Извините, здесь плохое форматирование. Мне просто поместить этот фрагмент вверху страницы галереи? Что вы имеете в виду под каталогом изображений? - person Drew; 23.06.2011
comment
Каталог, содержащий изображения, должен получить фильтр без кеша. Это нужно делать на сервере, а не через php. Вот пример того, как сделай это - person Jacob Eggers; 23.06.2011
comment
@drew: Я проголосовал за вас за счет баллов моего профиля. Я считаю, что вы не виноваты в том, что не разбираетесь в предмете. В любом случае, какой смысл иметь этот сайт, если все ожидают, что все будут задавать вопросы, о которых они уже знают? - person Jhourlad Estrella; 30.04.2013