InstantCommons/es



InstantCommons es una función de MediaWiki que permite usar cualquier archivo multimedia subido a Wikimedia Commons en cualquier instalación de MediaWiki de todo el mundo. Los wikis donde esta función está activada guardan en el caché el contenido que toman de Commons, con lo cual sólo lo descargan una vez, y cualquier visita posterior a la página donde está insertado ese contenido usa la copia descargada y guardada en el servidor local.

Justificación
Desde marzo de 2016, Wikimedia Commons, el repositorio central de archivos multimedia hospedado por la Fundación Wikimedia, contiene más de 30 millones de archivos. Todos y cada uno de estos archivos están disponibles bajo una licencia de contenido libre o bien en el dominio público; no existe ninguna otra restricción sobre ellos más allá del uso de insignias oficiales o de marcas registradas. Las licencias que limitan la utilización comercial se consideran como no libres.

A medida que crece la popularidad de Commons, también lo hace el deseo de terceros de usar contenido guardado allí, y de contribuir con nuevo material. En la actualidad es técnicamente posible cargar imágenes directamente desde los servidores de Wikimedia en el contexto de cualquier página web. El uso de enlaces directos de este modo está permitido, pero resulta problemático por varias razones:

Rationale
As of April 2019, Wikimedia Commons, the central media repository hosted by the Wikimedia Foundation, contains over 52 million files. Each of these files is available under a free content license or in the public domain; there are no other restrictions of use beyond those relating to use of official insignia or trademarks. Licenses which limit commercial use are considered non-free.

As awareness of the Commons grows, so does the desire of external parties to use content included therein, and to contribute new material. It is currently technically possible to load images directly from Wikimedia's servers in the context of any webpage. Such hotlinking is allowed, but it is problematic for multiple reasons:


 * No respeta los términos de licencia de la imagen, y no permite la transferencia de forma fiable de otra información extra (metadatos) que también sería deseable transferir
 * Además de no dar el crédito correspondiente al autor del archivo multimedia, tampoco da ningún reconocimiento a Wikimedia
 * Consume ancho de banda de Wikimedia cada vez que se visita una página (a menos que la imagen se haya almacenado en antememoria en el lado cliente o por medio de un «proxy»)
 * No facilita ciertas operaciones útiles que será interesante llevar a cabo, como la generación de diapositivas o el añadido de pies de foto, y es difícil de usar en el contexto de un wiki, particularmente para operaciones comunes de presentación de contenidos
 * Es un sistema atado a los URLs como identificadores de recursos, lo que dificulta el uso de espejos
 * Crea una web con un uso de recursos externos no monitorizable, donde cualquier cambio en el lado de Wikimedia afectaría necesariamente a los usuarios externos
 * No permite el visionado sin conexión a Internet, algo crucial en países que sólo cuentan con un acceso intermitente a la red.

InstantCommons busca dar solución a todo esto proporcionando un método sencillo de carga de imágenes y metadatos cacheados a partir de información obtenida de los servidores de Wikimedia. La primera implantación de InstantCommons tendrá lugar en MediaWiki, permitiendo que todas las operaciones de MediaWiki relacionadas con imágenes (creación de imágenes en miniatura, pies de foto, galerías, etc.) se realicen de forma transparente. Sin embargo, otros motores wiki pueden implantar una funcionalidad similar usando las operaciones a nivel de API que se describen más abajo.

Características básicas
Durante la instalación, el administrador del sitio puede decidir si quiere activar InstantCommons. Lo ideal, sin embargo, sería que esta característica estuviese activada por defecto (suponiendo que se indique un directorio para las subidas en el que MediaWiki pueda escribir) para permitir que el mayor número posible de usuarios utilice los contenidos de Wikimedia Commons.

Si la característica está activada, el wiki se comporta como cualquier proyecto de Wikimedia, es decir, si se hace referencia a una imagen o cualquier archivo multimedia que existe en Commons, puede incluirse en una página del wiki como cualquier otro archivo subido de forma local, indicando simplemente su nombre. Si existe un archivo local con ese nombre, tendrá preferencia sobre el contenido de Commons.

Configuración
Para activar InstantCommons en la versión 1.16 y posteriores de MediaWiki, basta con añadir la línea

Para activarlo en las versiones 1.13-1.15 de MediaWiki, mira.

This feature should work immediately. If it's not, check if the PHP function  is disabled in your web server.

HTTPS
Desde junio de 2015, Wikimedia Commons sólo es accesible por medio de HTTPS. Algunas instalaciones pueden carecer de su almacén de certificados raíz, impidiendo que MediaWiki pueda conectarse a Commons mediante HTTPS. Si InstantCommons deja de funcionar, prueba:


 * Instala la extensión php curl (generalmente es más fiable y más probable que disponga de los certificados necesarios ya instalados). En Debian/Ubuntu:
 * Asegúrate de que tienes un almacén de certificados al día. Si tienes instalada la extensión de curl para php, sigue las instrucciones webaware.

SElinux
Si tu OS de servidor es SElinux, por favor, consulta la sección dedicada en la página de configuración de SElinux, y asegúrate de que los scripts y módulos HTTPD pueden acceder a la red. Si SElinux impide que los scripts y módulos HTTPS conecten con el repositorio de Wikimedia Commons, InstantCommons simplemente no funcionará.

Detrás de un cortafuegos
Si el servidor en el que corre el wiki se encuentra detrás de un cortafuegos, el servidor wiki debe disponer de la posibilidad de enviar peticiones http/https a commons.wikimedia.org y upload.wikimedia.org para que InstantCommons funcione. El rango de direcciones IP puede consultarse en IP addresses.

Uso de archivos mediante InstantCommons
Teniendo activado InstantCommons, puedes elegir cualquier imagen de Wikimedia Commons (por ejemplo ), pulsar el botón "Usar este archivo" (el botón que tiene a su lado un icono de wiki) y pegar el código en tu wiki. En nuestro ejemplo, pegar

hará que aparezca la vista en miniatura, tal como puede verse al lado derecho de esta página.

Fíjate en que al usar archivos de este modo, sigues teniendo la obligación de respetar los términos de su licencia y cualquier otro requerimiento legal establecido sobre su uso - mira Commons:Reutilización del contenido fuera de Wikimedia.

Consideraciones de escalabilidad
Dado que la característica InstantCommons permite a un usuario de un wiki descargar recursos de los servidores de Wikimedia, resulta crucial que no exista la posibilidad de un ataque de Denegación de Servicio, ni contra el wiki que usa el contenido ni contra Wikimedia Commons, por ejemplo pegando 30K de enlaces a los archivos más grandes de Wikimedia Commons en una página del wiki y pulsando "Mostrar previsualización". Por lo tanto, cada petición atendida de InstantCommons deberá ser registrada por el wiki que tiene esta característica activada junto con el nombre de usuario o dirección IP del usuario originario de la petición y la fecha y hora en las que tuvo lugar. Si un usuario sobrepasa una generosa limitación de ancho de banda interno (que podría ser de hasta 1 GB por defecto, pero debería ser configurable), las futuras imágenes no se descargarán hasta transcurrido un plazo de 24 horas. Esta limitación no debería existir en el caso de los administradores de los wikis (si un administrador quiere lanzar un ataque DoS contra su propio wiki, no hay por qué impedírselo; y si alguno quisiera dirigir un ataque así contra Wikimedia, no se podría impedir salvo desde el lado de Wikimedia). Además del límite de ancho de banda por usuario, podría haber un límite en el tamaño de los archivos que pueden descargarse de este modo. Ésto sería así principalmente porque a partir de ciertas dimensiones, los archivos enlentecerían de forma significativa la carga de las páginas, pudiendo incluso hacer que la petición caducase antes de llevarse a cabo. Podría ser deseable recurrir a una aplicación externa para descargar estos archivos, de forma que pudiera hacerse en un segundo plano mientras se procesa la carga de la página. Por último, podría haber un tamaño máximo total para el caché de InstantCommons; en caso de exceder este tamaño, no se descargarían más archivos.

Aunque sería poco probable que los wikis individuales que usaran la función InstantCommons causasen un incremento significativo en gastos para la Fundación Wikimedia (dado que cada archivo sólo tiene que descargarse una vez, y se entiende que habría limitaciones de ancho de banda por cada usuario), de todos modos sería justo y razonable que los proyectos que usaran esta función incluyesen una nota en las páginas de descripción de archivos de InstantCommons, como por ejemplo: "Este archivo procede de Wikimedia Commons, un archivo multimedia hospedado por la Fundación Wikimedia. Si deseas apoyar a la Fundación Wikimedia, pues hacer tu donación aquí..."

Futuro potencial
En el futuro, puede ser deseable ofrecer un modelo de cambios editor/suscriptor, lo cual requerirá autentificación de wiki a wiki y una base de datos con imágenes que se usan en los wikis suscritos. Esto también abriría la puerta a la amenaza de vandalismo entre wikis, que podría solucionarse empleando un desfase de 24 horas o más entre el momento en el que se hacen cambios y el momento en que éstos tienen efecto real. Otra posibilidad sería una funcionalidad de dos vías, es decir, permitir subir archivos multimedia libres directamente a Commons desde cualquier wiki. Sin embargo, esto exigiría como mínimo autentificación federada. También puede hacer falta un sistema de comunicación entre wikis que comunique a los usuarios de otros wikis las políticas de Commons, que podría ser parte de un proyecto más grande como LiquidThreads.

Véase también

 * - para tener la misma funcionalidad que InstantCommons pero con otros wikis
 * PhotoCommons: extensión para Wordpress que proporciona la misma funcionalidad
 * Examples of sites which are using InstantCommons