Autonomía digital y tecnológica

Código e ideas para una internet distribuida

Paginar un listado de entradas en una page template usada como portada en WordPress

Para paginar un loop en una page template usada como portada en WordPress se puede usar el mismo procedimiento que para un loop en cualquier otra plantilla. Lo único que hay que cambiar el el nombre de la variable, que en este caso no se llama paged sino page. Una de estas cosas que te pueden hacer perder medio día hasta que des con ello.

Entonces, para mostrar las entradas de la página actual de un loop paginado dentro de una plantilla de página (page template) en la portada (front page):

$paged = ( get_query_var('page') ) ? get_query_var('page') : 1;
$query = new WP_Query( array( 'paged' => $paged ) );

Todo está documentado en el codex de WordPress.

La infraestructura para la colaboración de Civicwise

Imago voragine.net
• Por

How we work at Civicwise

Formo parte de la red internacional Civicwise, una estructura distribuida en decenas de países. Desde Civicwise desarrollamos proyectos siguiendo unos determinados modos de hacer y metodologías de colaboración para intervenir en el territorio. Varias personas me han preguntado cómo hacemos en Civicwise para organizarnos, comunicarnos y producir de manera colaborativa entre personas que estamos en zonas horarias diferentes, con ritmos vitales diferentes, con niveles de implicación diferentes. Al final del post hay una lista de herramientas pero antes quiero escribir algunas ideas que nos permiten funcionar de la manera que lo hacemos, más allá de las herramientas concretas que usamos.

Cómo solucionar el error ‘File not found’ en WordPress Multisite funcionando con Apache 2.4 y PHP-FPM 5.6

Imago voragine.net
[actualizado el ] • Por Enlace permanente

Las instalaciones de WordPress Multisite que estén configuradas para mostrar los sitios como subdirectorios pueden dar error en un servidor funcionando con Apache 2.4 y PHP-FPM 5.6. Cuando se visita el panel de administración de cualquier sitio que no sea el principal: File not found.

Si se consulta el log de FPM se verán multitud de respuestas 404. Y si se consulta el log de Apache se encontrarán errores de este tipo: Got error 'Primary script unknown'

Para solucionarlo hay que modificar ligeramente la configuración de Apache. La siguiente línea configura la conexión con FPM:

ProxyPassMatch ^/(.*\.php(/.*)?)$ unix:/ruta/hasta/el/php5-fpm.socket.sock|fcgi://localhost/ruta/hasta/el/hroot/

Hay que añadir otra regla (antes que la anterior) para cubrir el caso de los sitios secundarios del Multisite:

ProxyPassMatch ^/([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes)/.*\.php(/.*)?)$ unix:/ruta/hasta/el/socket.sock|fcgi://localhost/ruta/hasta/el/hroot/$2

Aunque esta solución funciona sigue arrojando los mismos errores, así que yo prefiero eliminar la configuración de FPM mediante ProxyPassMatch e incluir un handler dentro del entorno Directory. Así:

<Directory "/ruta/hasta/el/hroot">
  # otras configuraciones
   <FilesMatch \.php$>
      SetHandler "proxy:unix:/ruta/hasta/el/socket.sock|fcgi://localhost"
   </FileMarch>
</Directory>

Residencia Hacker: tecnologías de la participación

Imago voragine.net
[actualizado el ] • Por

Prototipo del módulo de gestión de la Red de espacios ciudadanos para Decide Madrid

A finales de 2016 tuve la oportunidad de participar junto a otros compañeros de Civicwise en la primera Residencia Hacker convocada por el ParticipaLab de Medialab Prado Madrid.

Durante dos meses estuvimos intentando encontrar respuestas a la siguiente pregunta: ¿Qué ocurre desde que un intrépido vecino presenta una propuesta a través de una plataforma de participación digital y el momento en el que se lleva a cabo?

Certificado TSL para conexión segura HTTPS con Let’s Encrypt y certbot

Imago voragine.net
[actualizado el ] • Por

Los certificados TSL permiten conectarse de manera segura a un sitio web usando el protocolo HTTPS (secure HTTP). Son conexiones seguras porque los datos que viajan desde el ordenandor del visitante hasta el servidor donde está alojado el sitio web, y viceversa, están encriptados y nadie puede inspeccionarlos.

El protocolo HTTPS encripta los datos utilizando criptografía asimétrica, que utiliza un par de claves: una pública para cifrar la información y otra privada para descifrarla. El servidor HTTPS difunde su clave pública a cualquier ordenador cliente que quiera conectarse a él, y guarda en secreto su clave privada.

El problema con la criptografía asimétrica es estar seguros de que la clave pública corresponde efectivamente al servidor al que se quiere conectar. De lo contrario existe el peligro de conectarse a un servidor que suplante al original.

Para asegurar la autenticidad de la clave pública de un servidor lo más eficaz es conocer una de las personas que gestionan el servidor, encontrarla presencialmente y que nos dé la clave. En un sistema global como internet en el se visitan servidores que están en otros continentes hubo que buscar otra manera. Es en este punto donde entran en juego las entidades de certificación: organizaciones de confianza que certifican la autenticidad de una clave pública.

Let's Encrypt es la primera entidad de certificación que emite certificados gratuitos y de manera automática. El proceso para obtener un certificado se puede hacer íntegramente desde la línea de comandos usando certbot.

Proveedores de alojamiento web alternativos

Imago voragine.net
• Por

Hace un tiempo, a raíz de una mala experiencia que tuve con un proveedor de hosting, escribí un textito en el que reflexionaba sobre la importancia de elegir bien a nuestros "caseros digitales".

Ya que en la mayor parte de los casos en internet estamos de alquiler y no tenemos muchos derechos sobre los espacios que usamos es importante elegir bien los proveedores. El tema dio para hacer una presentación en Thinkcities, en la que junto a Domenico Di Siena y otros interesados estuvimos hablando sobre las características que debería reunir un espacio digital para asegurar ciertas libertades.

Me apetece recuperar el tema, centrándome en los proveedores de alojamiento web. Lanzo una lista de ideas a tener en cuenta a la hora de elegir "casero digital".

Oda al hipervínculo, pieza clave de la web distribuida

Imago voragine.net
• Por
El bloguero iraní Hossein Derakhshan pasó seis años en la cárcel en Irán, desde 2008 a 2014. Cuando salió de prisión y se conectó a internet pudo ver lo mucho que todo había cambiado. Lo cuenta en su famoso texto The web we have to save (versión en español: La web que tenemos que salvar).

Black to de Future, el making-of

Imago voragine.net
[actualizado el ] • Por

Estamos a principios de 2007. España va bien. La burbuja es una idea en boca de pesimistas agoreros. Todavía no existen conceptos como vieja política ni casta. Aún no se usa la palabra conseguidor, ni mamandurria. Bankia todavía se llama Caja Madrid. El año siguiente estalla la burbuja inmobiliaria pero no es hasta 2014 que se destapa el escándalo de las tarjetas black: más de 15 millones de euros gastados por 86 consejeros y ejecutivos de Caja Madrid usando tarjetas black. Volviendo a 2007, ¿en qué se estarían gastando los consejeros de Caja Madrid sus tarjetas black? ¿Qué comprarían entonces, cuando todavía no había estallado la burbuja? ¿Cómo sería la vida un día como hoy pero hace diez años de uno de estos señores?

El pasado diciembre en Montera34, Pablo y yo hemos desarrollado Black to de Future. Una sencilla web y un bot de twitter que relatan un día en la vida de los señores de las black a través de sus gastos: concretamente un día como hoy de hace diez años.

En este post voy a contar el making-of técnico del proyecto. Pablo ha escrito otro post en el que relata cómo ha evolucionado este experimento de small data, como él lo llama, y cómo surgió.

Cómo crear y gestionar demonios en Linux con systemd

Imago voragine.net
[actualizado el ] • Por

Un demonio en Linux, y de manera general en cualquier sistema tipo UNIX, es un proceso que se ejecuta en segundo plano y es autónomo, de manera que no necesita interacción por parte de un usuario del sistema para arrancar y funcionar.

Los demonios son útiles para hacer funcionar programas independientes de una sesión de usuario, procesos que se inicien de manera automática cuando el sistema arranca, servicios que permanecen a la escucha para ejecutar su tarea cuando son llamados.

En este artículo se explica cómo crear un demonio en un sistema Debian Jessie funcionando con systemd, el gestor de demonios.