Instalando Pligg 1.0 paso a paso

Pligg es un programa, basado en el software liberado de Menéame, donde los usuarios pueden votar y proponer noticias.

En este post se va a indicar, paso a paso, como disponer de un sistema pligg en nuestro servidor. Los pasos realizados corresponden a una instalación del portal viajero topviajes.info.

Vamos a necesitar que nuestro hosting soporte php y MySQL, en caso de que no dispongais de un servidor de hosting, o bien no no tenga soporte para php y MySQL, podeis crearos una cuenta para hacer vuestras pruebas en el servidor gratuito 000webhost.

¡Vamos a la faena!

  1. Descargar y subir pligg a nuestro servidor, normalmente a través de ftp.
  2. Crear la base de datos MySQL, a ser posible en la versión 5.2. Tenemos que recordar: servidor de bbdd, usuario y contraseña.
  3. Visitar nuestra web, nos dará errores

error al comienzo de la instalacion de pligg

/settings.php was not found!
Try renaming ‘settings.php.default’ to ‘settings.php’

Renombrar el fichero settings.php.default por settings.php

/libs/dbconnect.php was not found!
Try renaming ‘dbconnect.php.default’ to ‘dbconnect.php’

Renombrar, dentro del directorio libs, dbconnect.php.default po dbconnect.php

  • Recargar la página, nos saldrá un error diferente:pligg 1.0 error al conectarse a la base de datos

    Error establishing a database connection!

    1. Are you sure you have the correct user/password?
    2. Are you sure that you have typed the correct hostname?
    3. Are you sure that the database server is running?
    4. Have you run the Pligg Installer?

    Ejecutaremos el instalador (Pligg installer)

    pligg installer start
    pligg installer start
    • Pulsar: click to continue in English (click para continuar en inglés)
    • Pasar la primera pantalla (next)
    • Llegaremos a donde se establece la conexión con la base de datos.
    pligg database connection
    pligg database connection
    • Rellenarlo, y pulsar ‘Check settings’ para comprobar la conexión.
    • Si todo va bien, nos saldrá:
    pligg connected to database
    pligg connected to database
    • y se crearán las tablas de la base de datos:
    Creación de tablas en Pligg
    Creación de tablas en Pligg
    • Tendremos también que definir el usuario administrador de pligg. En versiones anteriores, dicho usuario solía ser god (dios).
    Creación del usuario administrador
    Creación del usuario administrador
    • En el paso 5 nos da 5 recomendaciones, las dos primeras obligatorias:
    Creado administrador en Pligg
    Creado administrador en Pligg
    • chmod “/libs/dbconnect.php” back to 644, we will not need to change this file again.

    Cambiar los permisos del fichero “/libs/dbconnect.php” a 644,

    Cambiando permisos a dbconnect.php
    Cambiando permisos a dbconnect.php
    Permiso 644 al fichero dbconnect.php
    Permiso 644 al fichero dbconnect.php
    • DELETE the “/install” directory from your server if you have successfully installed Pligg.

    Borrar el directorio “/install”

    Borrar directorio /install
    Borrar directorio /install
    • Login to the admin area (username: xxxxx; password: xxxxx). Once you log in you should be presented with more information about how to use Pligg.

    Entrar en la administración del sitio pligg como administrador.

    Entrada como administrador al sitio Pligg
    Entrada como administrador al sitio Pligg
    • Configure your site using the admin area.

    Configurar el sitio usando el área del administrador

    Configurar Pligg una vez instalado
    Configurar Pligg una vez instalado

    ¡Ya está listo! Ahora solo falta configurarlo un poco, promocionarlo y gestionarlo en un futuro.

    Sitio Pligg 1,0 en marcha
    Sitio Pligg 1,0 en marcha

    Te propongo dos cosas:

    1. Entra en topviajes y mira su funcionamiento, analiza el sistema de votaciones, envía alguna noticia sobre viajes (imprescidible en esta web).
    2. Cuando tengas tu pligg en marcha, envíanos la referencia a través de un comentario, nos gusta saber que ha servido el manual de instalación, y a tí te servirá para dar a conocer tu web.
  • Anuncios

    Pligg sacó su versión 1.0

    Pligg es un gestor de contenidos, CMS (Content Management System), donde los usuarios pueden proponer y votar noticias, estilo Menéame.

    De hecho Pligg está basado en el software liberado de Menéame. Para quien no lo conozca os dejo una referencia para que veais como queda: Travigg.

    Pligg usa PHP y MySQL.

    Repercusiones de la adquisión de MySQL por parte de Sun

    Hace poco más de un mes que Sun y MySQL cerraron el acuerdo de compra por parte de los primeros.

    Con esto Sun quiere entrar en el mercado de los gestores de bases de datos, y ya vende y compara el coste de una licencia MySQL Enterprise con las de Oracle.

    De interés el artículo de Jonathan Swartz acerca de la adquisión de MySQL titulado Helping Dolphins Fly (Ayundando a volar a los delfines),  donde se anuncian “grandes noticias” y  de la repercursión en Sun de invertir miles de millones de dólares en la M de LAMP. Ian Murdock, creador de Debian, actualmente en la plantilla de Sun, se hace, también de la noticia sobre el anuncio de “big news” de la compra.

    En lo que afecta a gente que utilizamos MySQL para nuestros proyectos, MySQL seguirá siendo libre, con esa doble licencia comercial y gratuita. Al menos eso espero…

    Joolo.com – hosting gratuito 1 GB, php, MySQL, sin publicidad

    Joolo.com ofrece, en su versión gratuita, hosting de 1 GB sin publicidad, con posibilidad de utilizar PHP y MySQL.

    Más detallado:

    • Espacio: 1 GB
    • Ancho de banda: 10 GB
    • Sin publicidad
    • No subdominios
    • 1 cuenta FTP
    • PHP: versión 4
    • 10 bases de datos MySQL
    • Curl
    • GD
    • phpMyAdmin
    • Foros
    • Estadísticas: AWstats

    Apuntes para trabajar con MySQL

    Estos son algunas notas o apuntes que me sirven de referencia a la hora de trabajar con MySQL.

    No pretendo que sean de uso básico, sino más bien de recordatorio cuando algo se olvida o no se recuerda exactamente su sintaxis.

    Directorios habituales

    • Programa: /usr/local/var/
    • Datos: /usrl/local/mysql/data/ (o /var/lib/mysql/)
    • mysqladmin variables; => Muestra variables y directorios.

    Permiso base de datos

    • mysql -h servidor -u usuario -p => Posteriormente nos pedirá el password. Conectar con el servidor (ip o nombre) a través del usuario.
    • GRANT ALL ON basedatos TO usuario@localhost IDENTIFIED BY “password”; => Dar permisos a usuario con el password indicado sobre la base de datos indicada. Acceso solo desde localhost (normalmente es suficiente ya que si lo queremos para scripts PHP o similar se ejecutarán, seguramente en localhost).
    • GRANT ALL ON basedatos TO usuario@% IDENTIFIED BY “password”; => Idem a anterior, pero % indica que se podrá conectar desde cualquier IP.
    • GRANT ALL ON basedatos.* TO usuario@localhost IDENTIFIED BY “password”; => Dar permiso al usuario sobre las tablas de la base de datos.
    • mysqladmin -u root password “nuevopassword”; => Asignar contraseña a root.

    Trabajar con bases de datos

    • mysql basedatos <crear-basedatos.sql; => Crear una base de datos a través de un fichero.
    • mysqlshow; => Lista de bases de datos del servidor.
    • mysqlshow basedatos; => Lista de tablas de la base de datos.
    • mysqshow tabla; => Lista de campos (estructura) de la tabla.
    • create database basedatos; => Crea una base de datos.
    • show databases; => Muestra las bases de datos para el usuario actual.

    Tipos de campos

    • Enteros: TINYURL (1 byte, -128…127), SMALLINT (2 bytes, -32768…32767), MEDIUMINT (3 bytes), INT (4 bytes), BIGINT (8 bytes).
    • Reales: FLOAT (4 bytes), DOUBLE (8 bytes).
    • Cadenas: CHAR (cadena de longitud fija, si no se usa se rellena con espacios), VARCHAR (cadena de longitud variable).
    • Fechas y horas: DATE (AAAA-MM-DD), TIME (hh:mm:ss), DATETIME (AAAA-MM-DD hh:mm:ss), TIMESTAMP (AAAAMMDDhhmmss).

    Trabajo con tablas (SQL)

    • SELECT … ORDER BY … LIMIT 10,5; => Mostrar 5 registros a partir del registro 10.
    • SELECT COUNT(*) FROM tabla; => Mostrar cantidad de registros de una tabla.
    • SELECT COUNT(DISTINCT campo) FROM tabla; => Mostrar cantidad de valores diferentes de un campo en una tabla.
    • SELECT campo, COUNT(*) FROM tabla GROUP BY campo; => Mostrar un campo y la cantidad de veces que aparece en una tabla.
    • SELECT MONTH(fecha) as Mes, MONTHNAME(fecha) as Nombre, COUNT(*) AS Cantidad FROM tabla GROUP BY Nombre ORDER BY Mes; => Dado un campo llamado fecha, mostrar el número de mes, el nombre de mes (en inglés) y la cantidad de registros para dicho mes.
    • SELECT … FROM t1, t2 WHERE t1.id=t2.id; => Mostrar registros coincidentes de dos tablas.

    Funciones

    • TO-DAYS(“1997-04-11”) => 729490. Nos devuelve el entero asociado a la fecha.
    • mysql_num_rows() => Cantidad de registros de una tabla.

    Consejos y manuales sobre MySQL

    Estos son algunos de los enlaces que os propongo de referencia para los que trabajeis con MySQL. Se habla de consejos a la hora de diseñar las tablas de la base base de datos, optimización a la hora de crear de consultas (básicamente desde PHP), y manuales de referencia.

    1. Manual de referencia de MySQL: Oficial, en español, formato PDF.
    2.  10 tips for optimizing MySQL queries: en inglés, recomendaciones para crear consultas.
    3. 10 tips for optimizing MySQL queries (that don’t suck): en inglés, post relacionado con el anterior.
    4. Compactar BBDD en MySQL desde VB.Net: en español, código para conectar y compactar (OPTIMIZE) una tabla utilizando VB.Net.
    5. Optimizando consultas en MySQL: en español. Comparación de diferentes consultas y rendimiento de ellas.