В последнее время на сайте проблемы – не отображаются некоторые картинки. Своими силами починить не получается, поэтому обращаюсь за помощью к читателям. Суть дела вот в чём. Многие изображения на сайте подгружаются с портала Board Game Geek. Раньше всё было нормально. Делаешь публикацию, вставляешь ссылку на стороннее изображение и всё. С недавних же пор такие ссылки вставляются, но на сайте изображения не выводятся.
В чём может быть дело?
Есть несколько гипотез. Первая заключается в том, что что-то случилось с протоколами. В самом начале, когда такая проблема возникла, вроде бы не открывались только картинки по защищённому протоколу, то есть такие изображения, ссылка на которые начиналась с https://. Ссылки с http:// — работали. Но чуть позже перестали работать и они.
Второй вариант – на BGG поменялись правила «отдачи» изображений на внешние сайты. Это предложение базируется на том, что об аналогичных случаях сообщается и на форумах BGG (примеры: первый, второй). Люди пишут, что у них перестали подгружаться картинки и получают ответ о том, что на BGG меняется механизм отображения изображений. Вроде бы обещали ничего по существу не менять, но прошло уже более месяца, а картинок так и не видно. И неизвестно, поменяется ли что-то в будущем.
Третий вариант – на BGG «забанили» конкретный домен boardgamer.ru. Сайт же недавно переезжал на новый сервер, возможно, в ходе переезда в какой-то момент возникла большая нагрузка на BGG, и там просто отрезали источник проблем. Например, одни и те же картинки на Diced.ru показываются (см. тут), а на boardgamer.ru – нет (см. тут).
Как бы то ни было, не представляю, что теперь делать. На сайте очень много сторонних иллюстраций, и без картинок с Board Game Geek множество постов теперь сопровождаются «пустотами», зияющими вместо изображений. Может быть, кто-то сталкивался с подобной ситуацией и знает, что надо сделать, чтобы всё стало как раньше и изображения снова подгружались?
Не похоже, что дело в БГГ, ведь точно так же не грузятся картинки и с других ресурсов. Скорее что-то не так со стороны вашего сайта. Были ли установлены какие-то WordPress плагины накануне пояления проблем? А может какие-то изменения в коде или .htaccess файле, например rewrite rules, особенно связанные с HTTPS протоколом?
1. Поэтому так не делают. Серьёзно.
2. Да, не отдают с чужим referrer. Проверить можно аддоном, например
https://addons.mozilla.org/ru/firefox/addon/referrer-control/
Ну по крайней мере картинки с cf.geekdo-images.com так себя ведут.
Каноничные решения
https://stackoverflow.com/questions/5033300/stop-link-from-sending-referrer-to-destination
P.S. Не увидел сразу пример, что у других работает. Конечно, надо сначала им написать и спросить.
Ув. sXedge, подскажите с каких еще ресурсов не грузятся картинки? Буду благодарен за линк на пост
Последние 5 минут ресерча показали что картинки хостятся на AWS S3, и при попытке их загрузить мы получаем ответ от AWS CloudFront:
Request URL:https://cf.geekdo-images.com/images/pic2222365_md.png
Request Method:GET
Status Code:403
Remote Address:52.84.194.58:443
Referrer Policy:no-referrer-when-downgrade
Response Headers
content-length:555
content-type:text/html
date:Thu, 25 May 2017 04:42:13 GMT
server:CloudFront
status:403
via:1.1 f0eecbf6390179377707b707ebaa1e8b.cloudfront.net (CloudFront)
x-amz-cf-id:1R50UayY5wtmwtPYwPmTVSZYIFMCRExsYH_wrO1Yt2EaF_7bKSJ8Jw==
x-cache:Error from cloudfront
Request Headers
Referer:http://boardgamer.ru/s-kem-druzhit-lokalizatoram-vypusk-1
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
403 ошибка обычно говорит о третем варинате, но почему-то мне в это слабо верится.
Можно отправить запрос к BGG и узнать нет ли запрета на Referer: http://boardgamer.ru/*
И не попадают ли запросы с этим Referer в WAF
Еще один варинат возможно проблема с кешем на стороне cloudfront который сохранился для этого ресурса.
Тоесть я не уверен что это проблема со стороны boardgamer.ru
Если взять например заглавную картинку статьи: http://boardgamer.ru/werewords-ugadaj-magicheskoe
https://cf.geekdo-images.com/images/pic3414862_md.jpg
просто уберите «s» из https. Должен получится:
http://cf.geekdo-images.com/images/pic3414862_md.jpg
А у Зордока спрашивали? У него такой проблемы не было? Может он её уже порешал?
Проблема с форматом картинок. Для примера смотрел обзор Glooomhaven. Хотя по названиям файлов там .jpg, сервер реально возврящает .webp. Это новый формат картинок, chrome их умеет показать, а firefox — нет.
Работает, для вашего сайта:
meta name=»referrer» content=»no-referrer»
Юрий обратите внимание на форум, после переезда косяк на косяке (часть функционала не работает включая поиск), очень неудобно им пользоваться. Спасибо.
Не в тему картинок, но в тему неполадок.
До сих пор на форуме не работает поиск — выбивает страницу error и все.
@Андрей, «просто уберите «s» из https» — ERROR Request blocked.
@Vit, вряд ли, потому что в Хроме с БГГ картинки не показывает.
Пересохраняйте картинки на imgur.com. Это очень удобный, надежный и бесплатный сервис.
@futb_all
Не знаю, может где и другая проблема, но если смотреть обзор Gloomhaven, то там у меня firefox не показывает, а в chrome все нормально. И формат картинок смотрел по хедерам ответа сервера lh3.googleusercontent.com. Или он по разному возвращает разным ползователям.
Request headers:
Host: lh3.googleusercontent.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:53.0) Gecko/20100101 Firefox/53.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Referer: http://boardgamer.ru/obzor-igry-gloomhaven
Connection: keep-alive
Response headers:
Access-Control-Expose-Headers: Content-Length
Etag: «v173e»
Expires: Thu, 25 May 2017 08:31:26 GMT
Content-Disposition: inline;filename=»pic3213738_md.webp»
Content-Type: image/webp
Vary: Origin
Access-Control-Allow-Origin: *
X-Content-Type-Options: nosniff
Date: Thu, 25 May 2017 10:51:07 GMT
Server: fife
Content-Length: 47610
x-xss-protection: 1; mode=block
Cache-Control: public, max-age=86400, no-transform
Age: 0
Alt-Svc: quic=»:443″; ma=2592000; v=»38,37,36,35″
X-Firefox-Spdy: h2
Да, очевидно заблочили по рефереру:
> curl ‘https://cf.geekdo-images.com/images/pic3536354_md.jpg’ -XGET -H ‘Referer: http://boardgamer.ru/poznakomtes-dos‘ -vv
< HTTP/1.1 403 Forbidden
> curl ‘https://cf.geekdo-images.com/images/pic3536354_md.jpg’ -XGET -H ‘Referer: http://boardgamerA.ru/poznakomtes-dos‘ -vv
< HTTP/1.1 200 OK
По-совести то поделом, нехорошо это линковаться на чужие ресурсы, видимо, слишком много трафика они уже тебе оплачивают. По-хорошему себе надобно копировать картинки все и сервить. Ну можно разные шаманства попробовать, что выше пишут.
Несколько примеров, ссылки на которые на вашем сайте не отображаются у меня:
https://cf.geekdo-images.com/images/pic3414862_md.jpg
https://pp.userapi.com/c637227/v637227219/4d56e/9hfKlmkp6gg.jpg (это ж вроде ВК?, тогда понятно почему в Украине эти картинки не отображаются)
с googleusercontent.com на работе не отображаются, а дома все в порядке.
самый популярный пост 🙂