Anuncio

La semana pasada, Feedly lanzó una nueva "característica" controvertida - secuestro de enlaces de alimentación para robar tráfico de millones de bloggers.

Redirigir enlaces compartidos con Feedly a la propia vista de Feedly del artículo en lugar del artículo en sí en el sitio original es una preocupación para los creadores de contenido original en muchos blogs. No solo resulta en pérdida de tráfico, sino que también es engañoso para aquellos que siguen un blog en particular.

Aquí está la historia completa de por qué la gente está enojada y cómo un blogger ayudó a corregir la situación. También profundizo en su código fuente para mostrarle cuán sucios son sus pequeños trucos.

Crédito adeudado:El lector digital fue la fuente original de esta noticia: decidí investigar un poco más y ver exactamente qué estaban haciendo.

Primero, las buenas noticias

En el momento de escribir este artículo, el comportamiento se ha corregido de alguna manera, de modo que los enlaces acortados de Feedly se están enviando al sitio de los creadores, pero un examen rápido de

instagram viewer
Código de estado HTTP Los 10 mejores sitios web para códigos de error y solución de problemas Lee mas reveló que la redirección no se realizaba en el nivel de servidor típico con una redirección 301 o 302 (200, que Feedly está enviando, significa "sí, tenemos esa página, espera"; 404 significa "no encontrado"; 301 significa "redirigir permanentemente a otra URL; mientras que 302 significa "redirección temporal").

Esto significaba que la redirección se realizaba en JavaScript, por lo que quería saber más. Usando una herramienta de búsqueda de página web de línea de comando llamada rizo, Pude obtener el código fuente de un enlace de Feedly de muestra a Techmeme.com antes de que ocurriera la redirección (ya que CURL no ejecutará JavaScript), y reveló algunos datos sorprendentes. Esto es lo que encontré.

(He subido el fuente completa aquí si desea echar un vistazo, a continuación solo presento algunos fragmentos interesantes)

Algunas personas estaban preocupadas por las implicaciones de SEO de básicamente que su contenido fuera robado y publicado nuevamente en otro lugar; la buena noticia es que Feedly configuró correctamente rel = "canónico" metaetiqueta para indicar a Google que todos los valores de los enlaces deben pasarse al sitio original. Sin embargo, es imposible determinar si esto se agregó después de que comenzaron las quejas o si estuvo presente desde el principio.

Están eliminando anuncios

En lo que probablemente fue un intento equivocado de duplicar un Funcionalidad de tipo de legibilidad 6 Bookmarklets que impulsarán su velocidad de navegación web y productividadBookmarklets son pequeños ayudantes poco sospechosos que se encuentran en la barra de marcadores de su navegador. A diferencia de sus marcadores regulares, no archivan una URL, más bien los bookmarklets son pequeños applets de Java con una funcionalidad de un solo clic. Hay cientos de ... Lee mas , que desglosa una página hasta los elementos básicos esenciales, Feedly estaba quitando todos los botones de publicidad, seguimiento y uso compartido social que pueden haberse incrustado en el elemento de feed original. Aquí está la lista completa de las cosas que se están eliminando:


var visualExcludePatterns = ["feedproxy", "feedburner", "/ ~", "feeds.wordpress.com", "stats.wordpress.com", "googleadservices.com", "feedads", "tweet-this", "fmpub", "- ads", "_ ads", "pheedo", "zemanta", "u.npr.org/iserver","openx.org","slashdot-it","smilies","/ico - "," commindo-media.de "," creatives.commindo-media "," doubleclick.net "," i.techcrunch "," adview "," / feed.gif ",". ads. "," / avw.php ”," wp-digg-this "," feed-injector "," / plugins / "," tweetmeme.com "," _ icon _ "," / ad - "," share-buttons "," feedsportal ". com "," buysellads ", "holstee", "musictapp", "/ ad _", "/ button /", "donate.png", "/ sponsors /", "googlesyndication.com", "/ pagead", "/ adx", "assets / feed-fb "," assets / feed-tw "," feedburner.com/~ff","gstatic.com","feedsportal.com "]; 

Sacar un botón de "donar" parece particularmente irritante, por alguna razón.

Están secuestrando enlaces

Aquí llegamos al punto más serio, ya que Feedly no solo estaba eliminando el contenido de su sitio, sino que también estaban quitando los botones sociales originales y reescribiendo los metadatos. Esto significa que cuando alguien comparte el artículo posteriormente, de hecho sería compartir el enlace de Feedly y no la publicación original. Cualquiera que haga clic en ese enlace iría directamente a Feedly.

Captura de pantalla del contenido raspado de TheDigitalReader
Captura de pantalla del contenido raspado de TheDigitalReader

¿Y qué, podrías preguntar? Cuando una publicación se vuelve viral, puede ser de gran beneficio para el sitio en cuestión: aumentar las visitas a la página y los ingresos publicitarios, y ampliar su audiencia. Feedly estaba robando ese beneficio específico del sitio para expandir su propia base de usuarios. El código de Feedly incluía controles para dispositivos móviles que dirigen a los usuarios a la página de la tienda de aplicaciones correspondiente.

función acción (donde) { var actionName = "seguir"; var url = " http://feedly.com/#" + encodeURIComponent ("suscripción /" + feedInfo.id); if (/iPhone|iPad/i.test (navigator.userAgent)) { actionName = "instalar"; url = " http://itunes.apple.com/us/app/feedly/id396069556"; } más si (/android/i.test (navigator.userAgent)) { actionName = "instalar"; url = "market: // detalles? id = com.devhd.feedly "; } _gaq.push (['_trackEvent', bucket (), actionName + "." + where, feedInfo.id]); window.setTimeout (function () {document.location.href = url;}, 20); window.event.cancelBubble = verdadero. window.event.stopPropagation (); window.event.preventDefault (); }

No se trataba simplemente de "hacer que el artículo fuera más fácil de ver", sino de robar tráfico, así de simple. Eso no es realmente genial.

Su primera solución: una lista de exclusión codificada

Cuando The Digital Reader se quejó por primera vez a Feedly, su respuesta fue volver a codificar el Javascript para incluir un Lista de exclusion. Literalmente agregaron un cheque a cada enlace de Feedly para ver si era un elemento de The Digital Reader, y de ser así para evitar el secuestro de la página.


var siteExcludePatterns = ["/ TheDigitalReader /"]; función shouldExcludeSite (url)

Esta es, por supuesto, una forma absolutamente ridícula de hacer esto: ¿estaban planeando agregar a esa lista a medida que pasaba el tiempo y se quejaban más bloggers?

Nate, de The Digital Reader respondió:

¿De dónde sales exigiendo que me excluya de tu secuestro? Es como decir que debería pedirle a alguien que deje de pegarme en la billetera. ¿Y aún así crees que es razonable?

Su segunda solución: un truco rápido para omitir todo el código

Después de lo que solo puedo suponer que fue un número abrumador de quejas que siguieron, ajustaron el filtro de secuestro de la siguiente manera:

if (tipo == "parcial" || shouldExcludeSite (" http://www.techmeme.com/131202/p30#a131202p30" ) || cierto ) { document.body.innerHTML = ""; document.location.href = " http://www.techmeme.com/131202/p30#a131202p30"; }

"Parcial" se refiere a que el contenido raspado es un feed completo o parcial; no tiene sentido secuestrar feeds que solo publican un extracto después de todo. Presumiblemente, esta función comenzó como la única verificación que se produjo al elegir si enviar al usuario al sitio original o no. Puede ver la primera solución después de eso, que llama a la función para verificar si este sitio está en la lista de sitios que se han excluido; pero luego vemos su solución final en su lugar:


|| cierto.

Si tiene alguna experiencia en programación, reconocerá el truco rápido que dice "el siguiente código siempre se ejecutará", y generalmente se usa solo en la depuración. Si alguna de esas 3 condiciones es verdadera (las dos primeras ya no importan), Feedly redirige a los usuarios instantáneamente al sitio original.

Y ahí es donde se encuentra ahora. entonces que hemos aprendido?

Básicamente, Feedly se dedicó a crear una especie de experiencia de lectura reducida, pero la forma en que lo hicieron it - reescribir enlaces para propagar su propio servicio a través de acciones sociales posteriores fue bastante maldito asqueroso. Esta no es la única mala jugada que Feedly ha hecho recientemente tampoco: el mes pasado, comenzó a requerir iniciar sesión con cuentas de Google+ (habiendo visto qué tan bien funciona el inicio de sesión de Google+ para YouTube Sección de comentarios de YouTube ahora limpiada, cortesía de Google+Google ha limpiado YouTube con un nuevo sistema de comentarios impulsado por Google+. Ahora verá los comentarios más votados, los de las personas en sus círculos de Google+ y los del propietario del video. Lee mas , Supongo), pero eso también fue revertido rápidamente. La lección es: es posible que desee comenzar a encontrar un lector de alimentación alternativo El fin de Google Reader está cerca: prepárese con estos lectores RSS alternativosGoogle Reader está muerto. Para julio, el principal servicio RSS de Internet se está cerrando para siempre, lo que deja a los usuarios encontrar un reemplazo por su cuenta. Si está buscando un equivalente a Google, estos son solo ... Lee mas , a menos que ya haya sido engañado para pagar $ 99 por una cuenta Pro.

James tiene una licenciatura en Inteligencia Artificial y está certificado por CompTIA A + y Network +. Es el desarrollador principal de MakeUseOf, y pasa su tiempo libre jugando VR paintball y juegos de mesa. Ha estado construyendo computadoras desde que era un niño.