Значит история такая. Жила я себе, горя не знала и тут что-то такое случилось на нашем хостинге и им пришлось перенастраивать apache и nginx. И после этого imagecache трагически утратил способность делать тамбнейлы. При этом сгенеренное прежде прекрасно отображается. А новое не генерится ни в какую.
Пытала поддержку - они говорят что в душе не шарят в причинах этого сбоя и велели чинить всё самой - в частности перенастроить ngnix. Я почитала всякое насчет настройки nginx,и поняла что ничего в этом не понимаю.
Уважаемые сообщники, скажите пожалуйста, что исправить. Или скажите, где об этом написано для махровых гуманитариев.
В аттаче текущий конфиг.
Заранее большое спасибо.
Вложение | Размер |
---|---|
nginx.txt | 15.51 КБ |
Комментарии
«что-то такое случилось на нашем хостинге и им пришлось перенастраивать apache и ngnix.»
«велели чинить всё самой - в частности перенастроить ngnix.»
как то нелогично, их хостинг, они настраивали, и предлагают вам туда лезть ?
Мотивируют тем, что в целом сайты ведь работают, а сбой в работе конкретного модуля конкретной cms - это не их юрисдикция, это частности и они за это не отвечают.
404 обрабатывается ngnix, а не передаёт по цепочке апачу
это их прямые обязанности, тащемта, помочь вам настроить ngnix
ведь не вы же его ставили
+1
я сформулировал суть проблемы заказчику, заказчик в точности передал мои слова службе поддержки, на следующий день всё работало
как - я не знаю
Где это написано и что должно быть написано чтобы передавал?
но предлагают настроть ngnix, настроика которого их прямая обязанность ?
Говорят, что не знают как мне надо чтобы они его настроили.
понятия не имею
сам хотел бы узнать, заказчики иногда сталкиваются
Скажите, что должно быть так:
1) Все 404 ошибки Nginx должен передавать Апачу.
2) Все запросы на статические файлы должны обрабатываться Nginx.
Логика работы связки Apache+Nginx+ImageCache довольно простая:
1) Вариант, когда тумбнейла еще нет:
а) Тумбнейла еще нет, идет запрос на картинку тумбнейла
б) Nginx не находит этот файл на диске - ведь ImageCache еще не сгенерировал тумбнейл
в) Nginx передает 404 ошибку Апачу, типа
"Я не нашел файл http://site.ru/sites/default/files/imagecache/1024px/blabla.jpg, выдай юзеру 404 ошибку в браузер, это не моя работа, а твоя, так у меня в конфиге написано"
г) Апач принимает этот запрос от Nginx, передает его Друпалу - так как в .htaccess Друпала написано, что перед тем, как выдать в браузер 404 ошибку, Друпал должен крепко подумать, а нет ли у него вариантов
д) В случае с ImageCache вариант есть - сгенерировать тумбнейл и выдать его Апачу.
е) Апач выдает тумбнейл в браузер посетителя.
2) Тумбнейл уже сгенерирован:
а) Nginx находит файл на диске и сразу выдает его в браузер посетителя, без запросов к Апачу (Друпалу).
В конфиге Nginx для каждого сайта должна быть прописана секция типа fallback, в которой прописывается, что все ошибки, которые Nginx не смог обработать, перекидываются Апачу. В панелях ISP Manager эта секция выглядит примерно так (XX.XX.XX.XX - IP вашего сервера):
proxy_pass http://XX.XX.XX.XX:8080;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Real-IP $remote_addr;
}
Как-то так
Ооо! Больше спасибо, уважаемый marazmus!