Mediawiki

De Wikis en Educación

Imagen:aviso.png Página en construcción


Contenido

Introducción

MediaWiki es el sistema wiki utilizado para elaborar la Wikipedia y otros proyectos de la fundación Wikimedia, pero luego se hizo público bajo licencia GNU. Ha tenido una gran expansión a partir del año 2005, llegando a ser uno de los CMS más populares especializados en wikis.

Instalación

Requisitos previos

El software MediaWiki está escrito en lenguaje PHP y utiliza como sistema de almacenamiento una base de datos. Los prerequisitos para la instalación de la versión actual 1.15 son los siguientes:

Una forma sencilla de instalar estos requisitos es utilizar el paquete de distribución XAMPP, donde solamente es necesario descargarlo y ejecutarlo, sin necesidad de configurar el servidor y la base de datos.

Una vez tengamos estos requisitos, hay que descomprimir y almacenar la carpeta de MediaWiki en el directorio htdocs de XAMPP y comenzar la instalación.

Instalación

La instalación de MediaWiki tarda de unos 10 a 30 minutos. Se realiza mediante el script de instalación accesible mediante el navegador Web y es necesaria para la configuración de la base de datos (creación de tablas y de usuarios), así como para la configuración de los parámetros iniciales (como el nombre del wiki o el lenguaje).

Durante el proceso de instalación aparecerán distintas pantallas relacionadas con:

  1. Pantalla inicial.
  2. Comprobación del entorno.
  3. Configuración del sitio.
  4. Configuración del email.
  5. Configuración de la base de datos.
  6. Completar la instalación.
  7. Problemas encontrados.

Los parámetros que se introduzcan pueden ser cambiados posteriormente en los ficheros de configuración.

1. Pantalla inicial

Para acceder al script de instalación se escribe en el navegador web:

http://localhost/mediawiki-1.15.0

Es posible modificar el nombre a la carpeta mediawiki-1.15.0 que almacenamos previamente en la carpeta htdocs. Si se cambia por wiki, por ejemplo, el acceso al script sería entonces:

http://localhost/wiki

Se nos mostraría la pantalla inicial:

Archivo:MediaWikiInicio.jpg

2. Comprobación del entorno

Siguiendo el enlace que se muestra, MediaWiki procede a la comprobación del entorno, donde chequea que están disponibles todos los requisitos para que pueda funcionar correctamente; como por ejemplo las versiones de PHP y de la base de datos.

Si tras unos segundos se muestra el mensaje Environment checked. You can install MediaWiki, entonces podemos proseguir la instalación. Si por el contrario falta algún requisito, nos muestra en un mensaje qué es lo que falta y habrá que volver a instalarlo y volver a ejecutar el script de instalación, siguiendo el paso 1.

Archivo:MediaWikiChecking.jpg

3. Configuración del sitio

Se introducirán parámetros relacionados con el sitio wiki:

  • Wiki name: El nombre del sitio wiki.
  • Contact e-mail: El email de contacto de la persona que administrará el sitio.
  • Languaje: El lenguaje de interfaz.
  • Copyright/license: La licencia de los contenidos del sitio. Hay 3 tipos de licencia:
    • Sin licencia: El texto y las imágenes no tienen copyright. Cualquiera podrá copiar y usar estos contenidos.
    • GNU free documentation license: Licencia de documentación libre de GNU. Las limitaciones de los contenidos pueden verse aquí. Es la usada por la wikipedia.
    • Licencia Creative Commons o CC: Existen varias licencias de este tipo. Pueden verse aquí.
  • Admin username: Nombre de usuario del administrador.
  • Password: Contraseña del administrador del wiki.
  • Password confirm: Repetir la contraseña.
  • Object caching: Si se desea activar el sistema de cacheo de páginas, útil cuando el sitio es visitado por muchos usuarios.
  • Memcached servers: Especifica el servidor de caché.

Archivo:MediaWikiSite.jpg

4. Configuración del email

Se introducirán parámetros relacionados con las notificaciones por email. Por defecto, la mayoría de opciones están desabilitadas, si se desean habilitar es necesario configurar un servidor de correo electrónico. Aunque se habiliten, no funcionarán si no existe un servidor de correo.

  • E-mail features (global): Por defecto, las notificaciones generales están habilitadas, como el envío de recordatorio de una contraseña o permitir el envío de e-mails entre usuarios.
  • User-to-user e-mail: Para permitir el envío de emails entre usuarios sin que se publiquen sus direcciones.
  • E-mail notification about changes: Para que se envíe un email cuando el usuario lo especifique sobre cambios en una página, o sólo para las discusiones de página.
  • E-mail address authentication: Para que sea necesario introducir un email cuando se registre el usuario, además se debe confirmar la cuenta mediante email.

Archivo:MediaWikiMail.jpg

5. Configuración de la base de datos

A continuación se muestran los parámetros a configurar relacionados con la base de datos:

  • Database type: Tipo de base de datos. Aparece por defecto la base de datos instalada.
  • Database host: Donde se encuentra la base de datos. En este caso, como está instalada en el mismo PC, será la dirección IP del PC o Localhost.
  • Database name: Nombre de la base de datos, por defecto es Wikidb.
  • DB username: Nombre de usuario que se creará para el acceso a la base de datos. Por defecto es wikiuser.
  • DB password: Contraseña para el acceso del usuario de la base de datos. Tiene una longitud mínima de 6 caracteres.
  • DB password confirm: Repetir la contraseña.
  • Superuser account: Si no se posee permiso de creación en la base de datos, debemos darle los permisos necesarios al usuario anterior o marcar esta opción.
  • Superuser name: El nombre del administrador de la base de datos.
  • Superuser password: Contraseña del administrador de la base de datos.
  • Opciones específicas de la base de datos: No es necesario modificar este apartado, únicamente si se precisa una configuración más específica:
    • Database Table Prefix: Prefijo si se precisa acceder a una base de datos compartida con otros wikis o con otra aplicación web, para evitar conflictos.
    • Storage engine: Para seleccionar una tecnología de base de datos que proporciona acciones adicionales, como bloqueo de registros o un estándar de formato de datos. Puede seleccionarse InnoDB o MyISAM.
    • Database character set: Para modificar la configuración de almacenamiento de datos.

Archivo:MediaWikiDB.jpg

6. Completar la instalación

Una vez se hayan introducido todos los parámetros requeridos se procederá a la instalación. Pulsamos el botón, y si algo ha fallado, muestra un error y vuelve a la misma pantalla para que se pueda corregir. Cuando esté todo correcto, MediaWiki creará la base de datos, las tablas necesarias y el fichero de configuración. Para completar la instalación, hay que mover el archivo de configuración config/localsettings.php al directorio raíz del wiki, y para acceder a él se sigue el enlace de la pantalla.

Archivo:MediaWikiComplete.jpg

7. Problemas encontrados

Cuando se introduce un parámetro que no es correcto, aparece un mesaje en rojo sobre el parámetro que causa problemas. Se debe corregir para continuar la instalación.

Pueden verse los errores más comunes de instalación aquí (Inglés).

Configuración

Existen multitud de parámetros configurables en Mediawiki. Todos los parámetros configurables se encuentran en el archivo DefaultSettings.php de la carpeta includes de MediaWiki, pero siempre que se desee modificar algo habrá que hacerlo en el archivo LocalSettings.php, puesto que todos los cambios de DefaultSettings.php serán machacados cuando se actualice MediaWiki. No todos los parámetros aparecen en LocalSettings.php, pero pueden copiarse de DefaultSettings.php a este archivo.

Se pueden ver todos los parámetros configurables de MediaWiki agrupados por orden alfabético aquí, o agrupados por categorías aquí. A continuación se muestran los aspectos configurables más importantes.

Configuración de la interfaz

Modificar el logo

El logo es la imagen situada en la parte superior izquierda que aparece en todas las páginas del wiki. Si se cambia incorrectamente no habrá imagen en la página. Para modificarlo es necesario seguir estos pasos:

  • Subir la imagen al directorio: /wiki/skins/common/images/. Puede subirse a cualquier otro directorio, pero aquí es donde se almacenan todas las imágenes relacionadas con el sitio. Esta imagen debe tener el tamaño adecuado al reservado para éste para que no se solape con otros elementos de la página. El tamaño máximo que debería tener es de 4,76 x 4,76 cm.
  • Modificar la variable $wgStylePath, el directorio por defecto donde se almacena lo relacionado con el estilo del wiki. Debe modificarse a la ruta donde se almacenan todos los skins.
  • Por último, modificar la variable $wgLogo, con la dirección y el nombre de logo.
  • En resumen, deberíamos añadir a LocalSettings.php:
    • $wgStylePath = "$wgScriptPath/skins";
    • $wgLogo = "$wgStylePath/common/images/Logo.JPG";


Modificar la URL del logo cuando se pulsa

Por defecto, al pulsar en el logo se redirige a la página principal del wiki. Para modificar esto, es necesario modificarlo en la plantilla (MonoBook por defecto), que se encuentra en la carpeta skins. Se debe reemplazar:

<?php echo htmlspecialchars($this->data['nav_urls']['mainpage']['href'])?>

Por la URL por defecto, por ejemplo ‘ManualFAQ’, y quedaría de esta forma:

href = ‘ManualFAQ’.


Modificar la apariencia

Es posible crear un nuevo Skin o plantilla para personalizar la apariencia de todo el Wiki. La plantilla por defecto es Monobook, aunque en el directorio de MediaWiki se incluyen algunas más que pueden ser seleccionadas por cada usuario en su página de preferencias. Pero aunque existen otras plantillas, algunos componentes adicionales tales como JavaScript solo funcionan correctamente con la plantilla por defecto. Por esto, una opción puede ser incluir el resto de skins en el array $wgSkipSkins; así el usuario no podrá cambiar la apariencia de MediaWiki, pero nos aseguraremos de que todas las funciones adicionales funcionan de manera adecuada:

$wgSkipSkins = array( "chick", "cologneblue", "modern", "myskin", "nostalgia", "simple", "standard" );

Para la versión 1.14 y posteriores se puede poner a falso el siguiente parámetro para eliminar la pestaña Skins de las preferencias de usuario:

$wgAllowUserSkin = false;

En el siguiente enlace se muestran skins disponibles para descargar. Hay que descomprimirlos en la carpeta skins de MediaWiki. Para utilizarlo, se coloca como skin por defecto de la siguiente manera:

$wgDefaultSkin = 'miskin';

Acceso de usuarios

Permisos de acceso

En MediaWiki existen diferentes grupos de usuarios los cuales tienen asignados determinados derechos de acceso. Existen permisos de edición, administración, etc.; los cuales son modificables. Un usuario puede pertenecer a más de un grupo. Se pueden ver los grupos existentes aquí (inglés). Por defecto, los usuarios pertenecen al grupo user. El administrador del wiki puede añadir a un usuario a otro grupo en la página especial configuración de permisos de usuarios.

Los permisos de acceso que existen en MediaWiki, como por ejemplo permiso de edición o de lectura, se pueden ver aquí (inglés).

Es posible modificar los permisos a un determinado grupo, con el array bidimensional $wgGroupPermissions. En el primer índice se especifica el grupo de usuario que se quiere modificar, en el segundo el permiso. Se le asigna un valor falso para eliminar un permiso a un grupo o verdadero para concedérselo.

MediaWiki establece por defecto que los usuarios anónimos puedan editar una página. Para cambiarlo, se incluye esta sentencia en LocalSettings.php:

$wgGroupPermissions['*']['edit'] = false;


Longitud de la contraseña

Por defecto, cuando un usuario se registra en MediaWiki no es necesario que especifique una contraseña. Pero es algo que va en contra de la seguridad, ya que si un usuario se registra sin contraseña su cuenta puede ser accedida por cualquier otro.

Esto puede cambiarse fácilmente con el parámetro $wgMinimalPasswordLength, que guarda la longitud mínima de una contraseña, y por defecto esta a 0. Para especificar que una contraseña tenga, por ejemplo, 4 caracteres de longitud mínima, se agrega la siguiente línea en LocalSettings.php:

$wgMinimalPasswordLength = 4;

Archivos

Permitir la subida de archivos

Por defecto, no se permite subir archivos. Para que se permita, es necesario cambiar el valor de la variable $wgEnableUploads = true; y colocar esta línea en LocalSettings.php.

Una vez instalado, todos los usuarios registrados podrán subir un archivo. Esto puede ser modificado con los permisos de grupos (para que solo puedan subir archivos un determinado grupo de usuarios, por ejemplo, los administradores). Aparecerá un link nuevo en herramientas que enlaza con la página para subir un archivo.


Modificar las extensiones de archivos de subida

Por defecto, sólo se permiten subir archivos cuyas extensiones sean png, gif, jpg y jpeg. Para ampliar las extensiones, hay que introducir las que se deseen en el array $wgFileExtensions, por ejemplo:

$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'svg', 'mp3', 'ogg', 'avi', 'swf', 'pdf', 'zip', 'doc', 'xls' );

Extensiones

Las extensiones son ficheros php que sirven para ampliar la funcionalidad de MediaWiki añadiendo nuevas características y adaptarla a nuestras necesidades. Dependiendo de la meta para la que fueron creadas, se pueden usar para:

  • Extender el lenguaje de marcado wiki para escribir artículos. Por ejemplo, puede añadirse la etiqueta <calendar> para crear un calendario y publicarlo en una página.
  • Añadir nuevas capacidades administrativas. Por ejemplo, crear una página especial que proporcione información sobre los usuarios registrados.
  • Cambiar su aspecto. Crear un nuevo skin o plantilla para modificar el diseño de la interfaz.
  • Aumentar la seguridad con mecanismos de autenticación personalizados. Por ejemplo para que permita añadir un CAPTCHA para confirmar un registro.

En la página de MediaWiki existen más de 200 extensiones ya implementadas. Su instalación es sencilla, y de forma genérica todas siguen los siguientes pasos:

  1. Descargar la extensión y descomprimirla en la carpeta Extensions de MediaWiki.
  2. La instalación de la extensión consiste en la adición de la siguiente línea al final del fichero LocalSettings.php: require_once("extensions/nombre_de_la_extension.php");

Algunas pueden requerir pasos adicionales como la instalación de un parche o la modificación de la base de datos, pero estas instrucciones se encuentran en la página de descarga.

Artículos

Herramientas personales