[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как скрыть битые изображения??
tiger123
У меня есть сайт со статьями в которые есть изображения в виде хотлинков, тоесть сами изображения не хранятся на моем хосте. Оказалось, что со временем я получил кучу битых изображений, так как изображения брались из открытых источников))) Есть ли способ скрыть эти изображения или заменит их все одной заглушкой при помощи htaccess или чем то другим?
killer8080
Цитата (tiger123 @ 14.03.2016 - 15:09)
Есть ли способ скрыть эти изображения или заменит их все одной заглушкой при помощи htaccess или чем то другим?

вешать обработчик js onerror на картинки
tiger123
а поисковики будут видеть все равно битую картинку? или схавают то что выдает обработчик? и санкции не будут наложены за битость?
icedfox
поисковики умеют понимать js , но не всегда его обрабатывают в нашу пользу.

к сообщению killer8080 я бы добавил, переделать шаблон, что бы выводом картинок занимался JS. Это нормальная практика. При битой картинке выводите заглушку, при нормальной грузите ее.
tiger123
А как сделать вывод картинки через js, есть ли уже готовые решения?
kaww
Если подходит вариант - показывать заглушку а не скрывать, то можно решить при помощи mod_rewrite для apache или try_files для ngnix.
Пример http://stackoverflow.com/questions/1164364...no-image-exists
GET
tiger123

Можно просканить все страницы - вытащить ссылки на картинки, проверить их на ответ 200, битые удалить перезаписав статьи. Если не торопясь, то можно за несколько суток, можно сделать не напрягая особо сайт - напрямер сначала вытащив все адреса в таблицу: id/URL/N статьи, а потом просканить их с локального компа.

_____________
Не тот велик, кто не падал, а тот кто падал и поднимался.
tiger123
kaww

Такой вариант будет скрывать битые ссылки от поисковиков?

GET

такой подход сложноватый для меня)
kaww
Цитата (tiger123 @ 16.03.2016 - 05:02)
Такой вариант будет скрывать битые ссылки от поисковиков?

Они не будут битыми, т.к. сервер будет в этом случае отдавать заглушку.
tiger123
сделал вот так

RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} \.(gif|jpg|jpeg|png)$
RewriteRule .* /no_image_available.jpg [L]

заглушка лежит в корне сайта
почему то не работает...может такой вариант не подходит когда изображения используються в виде хотлинков? или пофигу?
killer8080
Цитата (tiger123 @ 16.03.2016 - 09:13)
почему то не работает...может такой вариант не подходит когда изображения используються в виде хотлинков? или пофигу?

конечно не работает, картинки же не твоем хосте лежат. smile.gif
Цитата (tiger123 @ 15.03.2016 - 19:31)
а поисковики будут видеть все равно битую картинку? или схавают то что выдает обработчик? и санкции не будут наложены за битость?

обработчик нужен только для браузера, ботам на него пофиг. А это точно что битые картинки ухудшают SEO? Просто глядя на то как в топе висят старые статьи с хабра, в которых половина картинок битых, как то наводит на противоположные выводы.
Цитата (GET @ 16.03.2016 - 07:42)
Можно просканить все страницы - вытащить ссылки на картинки, проверить их на ответ 200, битые удалить перезаписав статьи. Если не торопясь, то можно за несколько суток, можно сделать не напрягая особо сайт - напрямер сначала вытащив все адреса в таблицу: id/URL/N статьи, а потом просканить их с локального компа.

ну имхо довольно накладно, учитывая что делать это нужно с определенной периодичностью, картинки не в один же день отваливаются. Можно в js обработчике не только выводить заглушку, но и отправлять аяксом запрос на сервер и логировать для последующего разбора. Удалять ссылки из постов все равно лучше в ручную. Тогда ненужно будет с хостинга сканить тонны урлов, эту работу сделают браузеры.
FatCat
Цитата (killer8080 @ 18.03.2016 - 21:01)
А это точно что битые картинки ухудшают SEO?

По моим наблюдениям, не ухудшают. Но пропадает эффект улучшения от наличия картинки.

_____________
Бесплатному сыру в дырки не заглядывают...
tiger123
Надо может как то выводить изображения через PHP, что бы на этапе вывода тестировались?)
killer8080
Цитата (tiger123 @ 19.03.2016 - 06:44)
Надо может как то выводить изображения через PHP, что бы на этапе вывода тестировались?)

слишком накладно по ресурсам, да и загрузка страницы будет тормозить. Оно того стоит?
killer8080
Цитата (FatCat @ 18.03.2016 - 22:20)
Но пропадает эффект улучшения от наличия картинки.

А он есть? Боты же не могут определить релевантность содержимого картинки контенту.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.