La Porra sigue creciendo

La Porra

En Febrero del año pasado, con intención de aprender la API de facebook y meterme en el mundillo del desarrollo de aplicaciones, creé junto a Tabi, una aplicación de la que ya he hablado en este Blog, La Porra

La temporada del 2007-2008, acabó con 841 usuarios registrados, que hicieron 2534 apuestas.

Esta temporada, la 2008-2009, el número de visitas a crecido mucho más. Ha habido más de 8000 usuarios registrados, que han hecho más de 16.000 apuestas en más de 100.000 visitas y han dejado más de 500 comentarios.

Además, durante esta temporada se nos ha unido Pello, y nos han llamado de varias empresas para ofrecernos colaboración, que puede que el año que viene haga crecer más a nuestra pequeña.

Cualquier idea que se os ocurra para hacer mejorara la aplicación, siempre es bien venida…

MySQL, PHP, fechas e idiomas, vaya lio…

Como comenté en el POST anterior, ya hemos lanzado La Porra, pero ahora quiero escribir aquí algunas conclusiones técnicas que he sacado respecto al tema de las diferencias horarias y los idiomas de las fechas tanto en MySQL como en PHP.

El servidor que uso es un Solaris, creo (Joyent me lo dio gratis y configurado), y no sabía como cambiar la hora del sistema ni el idioma. Como no quería andar haciendo pruebas en el servidor de producción y no quería andar reiniciándolo, pensé en cambiar las configuraciones de PHP y MySQL. Aquí os dejo como lo he hecho:

Continuar leyendo “MySQL, PHP, fechas e idiomas, vaya lio…”

Capitulo VIII: Resumen y listado de artículos de ayuda

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Artículos seguidos para realizar este articulo:

  • http://articles.slicehost.com/2008/4/25/ubuntu-hardy-setup-page-1
  • http://articles.slicehost.com/2008/4/25/ubuntu-hardy-setup-page-2
  • http://articles.slicehost.com/2008/4/30/ubuntu-hardy-ruby-on-rails
  • http://articles.slicehost.com/2008/5/9/ubuntu-hardy-mongrel-and-mongrel-clusters
  • http://articles.slicehost.com/2008/4/25/ubuntu-hardy-installing-apache-and-php5
  • http://articles.slicehost.com/2008/5/9/ubuntu-hardy-apache-rails-and-mongrels
  • http://articles.slicehost.com/2007/9/5/introduction-to-svnserve
  • http://articles.slicehost.com/2007/9/5/using-ssh-with-svnserve
  • http://articles.slicehost.com/2007/9/6/multiple-projects-and-subversion
  • http://articles.slicehost.com/2007/9/6/multiple-repositories-and-subversion

Otros Artículos de ayuda:
Continuar leyendo “Capitulo VIII: Resumen y listado de artículos de ayuda”

Capitulo VII: Capistrano el “deployador”

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Vamos a por el siguiente paso, el que nos ayuda a “deployar”: Capistrano
Antes de nada, creamos la app Rails en nuestro proyecto:

rails project1 -c

La opción “-c”, añade todos los ficheros a subversion (pero sin hacer commit)

Ok, ahora, vamos a decirle a Subversion que ignore algunos ficheros que no queremos que gestione en las versiones:
Continuar leyendo “Capitulo VII: Capistrano el “deployador””

Capitulo V: Apache y PHP y RoR

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Ahora, instalemos Apache:

sudo aptitude install apache2 apache2.2-common apache2-mpm-prefork apache2-utils libexpat1 ssl-cert

En la instalación, dará una pequeña advertencia:

apache2: Could not reliably determine the server's fully qualified domain name,
using 127.0.0.1 for ServerName

No te preocupes, vamos a solucionarlo. Abre el archivo de configuración de Apache:
Continuar leyendo “Capitulo V: Apache y PHP y RoR”

Capitulo IV: Mongrel

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Instalemos Mongrel [Web oficial de Mongrel] (que es una gema, osea que simple):

sudo gem instal mongrel

Nos instalará alguna otra gema necesaria si no la tenemos ya instalada.
Mongrel tiene 3 instrucciones básicas (start, stop y restart), pero se puede combinar con muchos parámetros; por ejemplo, si queremos lanzar un Mongrel escuchando en el puerto 6000, y que esté en el entorno de producción:
Continuar leyendo “Capitulo IV: Mongrel”

Capitulo III: Instalar Ruby on Rails

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Instalemos ruby y sqlite:

sudo aptitude install ruby1.8-dev ruby1.8 ri1.8 rdoc1.8 irb1.8 libreadline-ruby1.8 libruby1.8 libopenssl-ruby sqlite3 libsqlite3-ruby1.8

Necesitamos crear algunos simlinks:

sudo ln -s /usr/bin/ruby1.8 /usr/bin/ruby
sudo ln -s /usr/bin/ri1.8 /usr/bin/ri
sudo ln -s /usr/bin/rdoc1.8 /usr/bin/rdoc
sudo ln -s /usr/bin/irb1.8 /usr/bin/irb

Veamos que version de ruby tenemos:
Continuar leyendo “Capitulo III: Instalar Ruby on Rails”

Capitulo II: Actualizacion del SO y ponerlo bonito

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Para revisar la versión que estamos usando (en nuestro caso Ubuntu 8.04 Hardy):

cat /etc/lsb-release

Lo que nos dará algo así:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=8.04
DISTRIB_CODENAME=hardy
DISTRIB_DESCRIPTION="Ubuntu 8.04"

Para revisar la memoria usada:
Continuar leyendo “Capitulo II: Actualizacion del SO y ponerlo bonito”

Capitulo I: Configuraciones iniciales

Este es un artículo que forma parte de un grupo de artículos para aprender a configurar un servidor web que te pueden interesar.

Lo primero de todo, tienes que entrar al servidor por SSH.

ssh root@123.45.67.89

Entramos como usuario root como excepción, será la única vez que lo hagamos, luego quitaremos acceso root al servidor.
Una vez dentro, lo primero, cambiar la contraseña de root:

passw

y añadir un usuario que usaremos como principal

adduser txurdi

Ahora, quitaremos acceso ssh al usuario root y daremos permisos al usuario txurdi, además de configurar algunas cosas para mayor seguridad:
Continuar leyendo “Capitulo I: Configuraciones iniciales”