проблемы с выдачей одной картинки апачем
Модераторы: SLEDopit, Модераторы разделов
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
проблемы с выдачей одной картинки апачем
Есть сайт, который разрабатывается на сервере локальной сети. После всей отладки переносится на хостинг.
И вот в последнее время стала происходить необъяснимая вещь. На дев-сервере под управлением Debian (Apache) одна картинка стала упорно заменяться другой .... (На продакт - всё в поряде)
Сейчас попробую объяснить.
По адреса www.mydomain.ru/img/smth1/img1.png открывается картинка из /img/smth2/img2.png.
И соответственно выводится на страничке не img1.png, а img2.png.
img1 выводится, если адрес www.mydomain.ru//img/smth1/img1.png (два слеша) вбить в адресную строку.
Ничем не лечится, кроме как взять, и переименовать img1.png в, например, img1.png.tmp, а затем обратно. Всё становится на свои места.
Хочу уточнить, что на странице с img1 полностью аналогичным образом выводятся и img2, img3 и т.д.
И всё с ними в порядке, кроме злополучной img1.
(пути, названия и всё такое вымышленное)
Объясните, пожалуйста, что за полтергейст за такой?
ЗЫ. Не уверен, что угадал с веткой форума ....
И вот в последнее время стала происходить необъяснимая вещь. На дев-сервере под управлением Debian (Apache) одна картинка стала упорно заменяться другой .... (На продакт - всё в поряде)
Сейчас попробую объяснить.
По адреса www.mydomain.ru/img/smth1/img1.png открывается картинка из /img/smth2/img2.png.
И соответственно выводится на страничке не img1.png, а img2.png.
img1 выводится, если адрес www.mydomain.ru//img/smth1/img1.png (два слеша) вбить в адресную строку.
Ничем не лечится, кроме как взять, и переименовать img1.png в, например, img1.png.tmp, а затем обратно. Всё становится на свои места.
Хочу уточнить, что на странице с img1 полностью аналогичным образом выводятся и img2, img3 и т.д.
И всё с ними в порядке, кроме злополучной img1.
(пути, названия и всё такое вымышленное)
Объясните, пожалуйста, что за полтергейст за такой?
ЗЫ. Не уверен, что угадал с веткой форума ....
Si vis pacem, para bellum.
-
eddy
- Сообщения: 3321
- Статус: Красный глаз тролля
- ОС: ArchLinux
Re: проблемы с выдачей одной картинки апачем
Запретите браузеру кешировать информацию, плюс проверьте, как работает ваш прокси.
У меня намедни был такой "прикол": битый час я возился с локальным форумом, меняя стиль, каждый раз после изменения жму ctrl+R - фигвам. Потом сбросил кэш браузера - заработало.
Ну, а если с кэшем все ОК, посмотрите логи апача и его конфигурацию: может быть, у вас виртуальные серверы как-то не так настроены?
У меня намедни был такой "прикол": битый час я возился с локальным форумом, меняя стиль, каждый раз после изменения жму ctrl+R - фигвам. Потом сбросил кэш браузера - заработало.
Ну, а если с кэшем все ОК, посмотрите логи апача и его конфигурацию: может быть, у вас виртуальные серверы как-то не так настроены?
RTFM
-------
KOI8-R - патриотичная кодировка
-------
KOI8-R - патриотичная кодировка
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
eddy писал(а): ↑05.04.2010 09:27Запретите браузеру кешировать информацию, плюс проверьте, как работает ваш прокси.
У меня намедни был такой "прикол": битый час я возился с локальным форумом, меняя стиль, каждый раз после изменения жму ctrl+R - фигвам. Потом сбросил кэш браузера - заработало.
Ну, а если с кэшем все ОК, посмотрите логи апача и его конфигурацию: может быть, у вас виртуальные серверы как-то не так настроены?
Запрещал кэш, обновлял принудительно страницу. Прокси причём? Он отключён для этого адреса в firefox.
Вот с апачем ... как именно смотреть логи и конфигурацию? Как-то не так виртуальные серверы, это как? (Не, я правда не знаю, что копать ...)
Повторюсь, одна и та же картинка во всех случаях, одна из всех на странице ....
Si vis pacem, para bellum.
-
arkhnchul
- Сообщения: 2284
- Статус: Толчковый инженер
- ОС: Debian, Fedora
Re: проблемы с выдачей одной картинки апачем
а сама cms-ка сайта, если она есть - ничего там у себя не кеширует?
Losing is fun!
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
Позволю себе немного апнуть тему, заметив, что глюк проявляется после того, как заливаю изменения в subversion.
# svn add * --force
# svn commit
# svn add * --force
# svn commit
Si vis pacem, para bellum.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: проблемы с выдачей одной картинки апачем
1. в логах апача записи по поводу этой картинки смотрели?
2. там, где это происходит, точно ли «голый» apache? посмотрите на ответ сервера (wget -SO /dev/null <url>)
2. там, где это происходит, точно ли «голый» apache? посмотрите на ответ сервера (wget -SO /dev/null <url>)
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
JwsD
- Сообщения: 129
- ОС: ArchLinux
Re: проблемы с выдачей одной картинки апачем
Покажите логи апача, что он говорит когда качаете первую, и когда качаете вторую картинку.
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
1.
# tail -f /var/log/apache2/other_vhosts_access.log
с одним слешем (www.mydomain.ru/img/smth1/img1.png)
www.mydomain.ru:80 192.168.10.3 - - [27/Apr/2010:09:01:17 +0600] "GET /img/smth1/img1.png HTTP/1.1" 304 - "-" "Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7"
с двумя слешами (www.mydomain.ru//img/smth1/img1.png)
www.mydomain.ru:80 192.168.10.3 - - [27/Apr/2010:09:01:17 +0600] "GET //img/smth1/img1.png HTTP/1.1" 304 - "-" "Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7"
в принципе ничем не отличается ....
2.
Ну да, «голый» apache. У хостера связка с nginx, а у меня только apache.
А с wget какая то непонятка, он через proxy почему-то идёт и качает из интернета, а не с dev-сервера, хотя в настройках гнома домен сайта включён в исключения.
Si vis pacem, para bellum.
-
JwsD
- Сообщения: 129
- ОС: ArchLinux
Re: проблемы с выдачей одной картинки апачем
у wget подавить прокси, используется параметр --no-proxy, с ним попробуйте.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: проблемы с выдачей одной картинки апачем
вот вам и зацепка. разберитесь, почему возвращается не 200-й код, а 304-й.
на запрос других картинок тоже небось 304-й возвращается?
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
да, тоже
304 возвращается, потому что файл картинки не изменён
Si vis pacem, para bellum.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: проблемы с выдачей одной картинки апачем
пробежался по нескольким сайтам. картинки возвращаются с кодом 200. значит, я ещё не очень отстал от жизни.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
проясните, пожалуйста, я что-то, видимо, не понимаю ...
Si vis pacem, para bellum.
-
JwsD
- Сообщения: 129
- ОС: ArchLinux
Re: проблемы с выдачей одной картинки апачем
Поглядите какие заголовки отдает апач. Видать он получает if-modifed-since
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: проблемы с выдачей одной картинки апачем
нормальный ответ веб-сервера: 200-й код. да, бывает множество ситуаций, когда код другой.
почему на тривиальный запрос ваш сервер выдаёт 304-й код — непонятно.
кстати, это мы в логах увидели. а с точки зрения клиента как получается?
$ wget -SO /dev/null http://ваш_сервер/путь/к/той/самой/картинке
?
сразу и все отдаваемые заголовки увидите, про которые говорит уважаемый JwsD (правда, он речь о получаемых ведёт, но указанная команда не должна слать никаких заголовков).
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
Спасибо сказали:
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
В общем, вот:
# wget -SO /dev/null --no-proxy www.mydomain.ru/img/smth1/img1.png
ответ
--2010-04-28 09:03:42-- http://www.mydomain.ru/img/smth1/img1.png
Преобразование адреса www.mydomain.ru... 192.168.10.2
Устанавливается соединение с www.mydomain.ru|192.168.10.2|:80... соединились.
Запрос HTTP послан, ожидание ответа...
HTTP/1.1 200 OK
Date: Wed, 28 Apr 2010 03:03:42 GMT
Server: Apache/2.2.9 (Debian) DAV/2 SVN/1.5.1 PHP/5.2.6-1+lenny8 with Suhosin-Patch
Last-Modified: Thu, 01 Apr 2010 08:07:18 GMT
ETag: "3ba0a5-7fcd-4832859f4f980"
Accept-Ranges: bytes
Content-Length: 32717
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: image/png
Длина: 32717 (32K) [image/png]
Сохраняется в каталог: `/dev/null'.
100%[===========================================================================>] 32 717 --.-K/s в 0,003s
2010-04-28 09:03:42 (11,8 MB/s) - `/dev/null' сохранён [32717/32717]
В логах апача в этот момент это:
www.mydomain.ru:80 192.168.10.3 - - [28/Apr/2010:09:03:42 +0600] "GET /img/smth1/img1.png HTTP/1.0" 200 32717 "-" "Wget/1.11.4"
Если эту же картинку пытаюсь загрузить браузером, в логах вот это:
www.mydomain.ru:80 192.168.10.3 - - [28/Apr/2010:09:05:04 +0600] "GET /img/smth1/img1.png HTTP/1.1" 304 - "-" "Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7"
# wget -SO /dev/null --no-proxy www.mydomain.ru/img/smth1/img1.png
ответ
--2010-04-28 09:03:42-- http://www.mydomain.ru/img/smth1/img1.png
Преобразование адреса www.mydomain.ru... 192.168.10.2
Устанавливается соединение с www.mydomain.ru|192.168.10.2|:80... соединились.
Запрос HTTP послан, ожидание ответа...
HTTP/1.1 200 OK
Date: Wed, 28 Apr 2010 03:03:42 GMT
Server: Apache/2.2.9 (Debian) DAV/2 SVN/1.5.1 PHP/5.2.6-1+lenny8 with Suhosin-Patch
Last-Modified: Thu, 01 Apr 2010 08:07:18 GMT
ETag: "3ba0a5-7fcd-4832859f4f980"
Accept-Ranges: bytes
Content-Length: 32717
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: image/png
Длина: 32717 (32K) [image/png]
Сохраняется в каталог: `/dev/null'.
100%[===========================================================================>] 32 717 --.-K/s в 0,003s
2010-04-28 09:03:42 (11,8 MB/s) - `/dev/null' сохранён [32717/32717]
В логах апача в этот момент это:
www.mydomain.ru:80 192.168.10.3 - - [28/Apr/2010:09:03:42 +0600] "GET /img/smth1/img1.png HTTP/1.0" 200 32717 "-" "Wget/1.11.4"
Если эту же картинку пытаюсь загрузить браузером, в логах вот это:
www.mydomain.ru:80 192.168.10.3 - - [28/Apr/2010:09:05:04 +0600] "GET /img/smth1/img1.png HTTP/1.1" 304 - "-" "Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.1.7) Gecko/20100106 Ubuntu/9.10 (karmic) Firefox/3.5.7"
Si vis pacem, para bellum.
-
JwsD
- Сообщения: 129
- ОС: ArchLinux
Re: проблемы с выдачей одной картинки апачем
Date: Wed, 28 Apr 2010 03:03:42 GMT
Last-Modified: Thu, 01 Apr 2010 08:07:18 GMT
О чем я и говорил. У тебя браузер отправляет запрос, if-modifed-since, после чего удостоверяется, что картинка не изменилась, берет ее из кеша своего.
304 Not Modified (Не изменялось)
Появился в HTTP/1.0.
Сервер возвращает такой код, если клиент запросил документ методом GET, использовал заголовок If-Modified-Since или If-None-Match и документ не изменился с указанного момента. При этом сообщение сервера не должно содержать тела.
Основная причина - это браузер. Почисти полностью всю историю, все кеши. Потом попробуй еще раз.
И да, у тебя эта картинка идет как jpg файл? или она генерится php?
ЗЫ можно попробовать не чистить кеш сначала, а просто обновить картинку, тоесть сделать так, чтобы ее дата изменения обновилась до текущей. И тогда попробовать ее еще раз посмотреть браузером.
Спасибо сказали:
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux
Re: проблемы с выдачей одной картинки апачем
JwsD писал(а): ↑28.04.2010 10:19Date: Wed, 28 Apr 2010 03:03:42 GMT
Last-Modified: Thu, 01 Apr 2010 08:07:18 GMT
О чем я и говорил. У тебя браузер отправляет запрос, if-modifed-since, после чего удостоверяется, что картинка не изменилась, берет ее из кеша своего.
304 Not Modified (Не изменялось)
Появился в HTTP/1.0.
Сервер возвращает такой код, если клиент запросил документ методом GET, использовал заголовок If-Modified-Since или If-None-Match и документ не изменился с указанного момента. При этом сообщение сервера не должно содержать тела.
Основная причина - это браузер. Почисти полностью всю историю, все кеши. Потом попробуй еще раз.
И да, у тебя эта картинка идет как jpg файл? или она генерится php?
ЗЫ можно попробовать не чистить кеш сначала, а просто обновить картинку, тоесть сделать так, чтобы ее дата изменения обновилась до текущей. И тогда попробовать ее еще раз посмотреть браузером.
Картинка png, не генерируется php.
Я доморощенным способом временного переименования файла так и меняю время его модификации/создания.
Просто как то неудобно это делать каждый раз после коммита. И проблема только с одной картинкой, вот что заинтересовало то.
Установил хромиум, в нём всё в порядке. Почему же файрфокс так себя ведёт - загадка.
В общем, беда на стороне клиента, а это уже не интересно.
Всем спасибо.
Si vis pacem, para bellum.
-
sash-kan
- Администратор
- Сообщения: 13939
- Статус: oel ngati kameie
- ОС: GNU
Re: проблемы с выдачей одной картинки апачем
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
при сбоях форума см.блог
Спасибо сказали:
-
Galaxy
- Сообщения: 158
- Статус: Говорящий со звёздами
- ОС: Debian GNU/Linux