Запросы Facebook на {url}/no_facebook_preview_picture.jpg на 404 ссылках

Мы работаем с сокращением URL-адресов, за последнюю неделю или около того мы начали видеть множество странных запросов для {normal url}/no_facebook_preview_picture.jpg от принадлежащих Facebook IP-адресов и агента пользователя facebookexternalhit/1.0 (+http://www.facebook.com/externalhit_uatext.php)

Если я разместил обычную ссылку на наш сайт на моей стене (установлен как Only Me, чтобы я мог протестировать), я получаю следующую запись в нашем журнале доступа

66.220.152.6 - - [05/Feb/2013:16:31:36 +0000] "GET /44_U HTTP/1.1" 200 1314 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"

Однако, если я отправляю ссылку, которая возвращает 404 или 410 (спам-ссылка удалена после создания), я получаю это

69.171.237.15 - - [05/Feb/2013:16:49:16 +0000] "GET /notexistURL HTTP/1.1" 404 1319 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"

затем в течение часа или около того

173.252.110.113 - - [05/Feb/2013:17:15:15 +0000] "GET /notexistURL/no_facebook_preview_picture.jpg HTTP/1.1" 404 0 "-" "facebookexternalhit/1.0 (+http://www.facebook.com/externalhit_uatext.php)" "-"

A WhoIs из отчетов IP

NetName FACEBOOK-INC
NetHandle   NET-173-252-64-0-1

Таким образом, они определенно являются IP-адресами Facebook.

Мы получаем около 10-20 запросов, подобных этому в день, все одинаковые. Мы можем вернуть только файлы журнала на 7 дней, но эти запросы выполнялись 7 дней назад.

Я тестировал ссылки, которые уникальны, поэтому нет другого способа найти ссылку. Я лично лично не использую Facebook, и все, кроме моих тестовых ссылок, были созданы/опубликованы другими пользователями, но я узнаю все приложения, связанные с моей учетной записью Facebook, и нет ничего необычного, поэтому я не думаю, что это сторонний участник приложение (я могу предоставить список, если это необходимо, но все они являются приложениями с большим именем)

Во время моего изучения файлов журналов Facebook даже не создает интеллектуальных запросов, он просто слепо придерживается строки /no_facebook_preview_picture.jpg в конце URL-адресов даже с строками запроса. Например:

69.171.228.114 - - [05/Feb/2013:17:19:13 +0000] "GET /iAmNotARealURL1234777?ref=fb&cows_go=moo HTTP/1.1" 404 1118 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"
69.171.228.114 - - [05/Feb/2013:17:19:13 +0000] "GET /iamnotarealurl1234777 HTTP/1.1" 404 1118 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"
173.252.103.4 - - [05/Feb/2013:17:44:41 +0000] "GET /iAmNotARealURL1234777?ref=fb&cows_go=moo/no_facebook_preview_picture.jpg HTTP/1.1" 404 1118 "-" "facebookexternalhit/1.1 (+http://www.facebook.com/externalhit_uatext.php)" "-"

Google, похоже, отображает множество случайных результатов, в основном из создателей ссылок, но я не мог найти никакой информации о том, что это за запросы.

Каковы эти запросы? Для чего им нужны Facebook? Является ли это ошибкой в ​​нашем приложении или эти запросы можно безопасно игнорировать?

Update:

Несколько дней мы получаем 2-3 сотни обращений к этим URL

[[email protected] nginx]$ for DAYLOG in `find ./ | grep "dftbashort.log-"`; do COUNT=`cat $DAYLOG | grep no_facebook_preview_picture | wc -l`; echo "${DAYLOG} has ${COUNT} occurences"; done
./dftbashort.log-20130201 has 0 occurences
./dftbashort.log-20130130 has 2 occurences
./dftbashort.log-20130129 has 2 occurences
./dftbashort.log-20130128 has 2 occurences
./dftbashort.log-20130202 has 378 occurences
./dftbashort.log-20130207 has 222 occurences
./dftbashort.log-20130205 has 257 occurences
./dftbashort.log-20130209 has 178 occurences
./dftbashort.log-20130131 has 2 occurences
./dftbashort.log-20130203 has 266 occurences
./dftbashort.log-20130206 has 667 occurences
./dftbashort.log-20130204 has 12 occurences
./dftbashort.log-20130127 has 4 occurences
./dftbashort.log-20130208 has 260 occurences

Мы не предоставляем метатеги с открытым графиком, а страница не имеет другого контента, кроме метаданных/javascript.

Ответ 1

Я уверен, что это скребок для совместного использования, который пытается создать предварительный просмотр вашего URL-адреса, запустите URL-адрес через Facebook Debug Tool и вы Посмотрите, что видит/ищет Facebook

Я не уверен, что представляют собой запросы /notexistURL/no_facebook_preview_picture.jpg, если вы не имеете ничего в своем коде, указывающем на такой URL-адрес; Если бы я должен был догадаться, я бы сказал, что это был какой-то дефолт или резерв, используемый, когда нет метатег; возможно, ошибка - я уверен, что если вы включите правильные метатеги для Facebook, они ухватятся за них и не будут делать недопустимые запросы, с добавлением преимуществ ваших URL-адресов, которые выглядят лучше на Facebook.com и других сайтах, которые поддерживают те же теги

Ответ 2

Сегодня утром я столкнулся с тем же, и сделал кое-что. Вы можете использовать информацию на этом сайте, чтобы помочь вам в правильном направлении. Кажется, помогли с моим сайтом, убитым этими ошибками.