Soy un gran admirador de Drupal. De hecho he montado no hace mucho una batería de portales sociales para CMedia, una empresa cliente. En este caso fue donde despues de un análisis completo de los CMS open source del mercado me decante por Drupal como la mejor opción. No me equivoqué. Drupal ofrece una funcionalidad completísima, de forma inherente o mediante módulos externos, que permiten, una vez superado el aprendizaje, realizar portales de una calidad increible y con una funcionalidad que supondría un coste en desarrollo altísimo. En mi caso concreto el sistema tenia que cumplir ciertos requisitos SEO que pemitieran una buena indexación en buscadores. El objectivo se ha cumplido y debo de reconocer que este CMS me ha enamorado. Pues esta idea se confirma cuando me entero de que Yahoo utiliza Drupal para sus sitios. Un ejemplo es Yahoo! Research Esto me alegra porque me recuerda que elejí bien y además porque significa que otro de los grandes se suma a utilizar … [Read more...] about Yahoo está usando Drupal
Archives for December 2007
Listado de paises ISO-3166 en español.
Muchas veces necesitamos tirar mano de un listado de identificadores para codificar paises. Podemos reinventar la rueda o podemos aprovecharnos de los estándares vigentes. La mejor opción el ISO-3166 que codifica en dos o tres caracteres los paises. Aquí podeis acceder al listado en inglés. Aquí lo teneis en varios formatos como HTML, XML o TXT y en inglés y francés. Si quereis el listado en español lo podeis encontrar en nuestra querida wikipedia. Si lo quereis en catalan tambien está disponible en la wikipedia. … [Read more...] about Listado de paises ISO-3166 en español.
Como capturar el primer carácter en shell scripting o ‘get first char’
Aquí teneis un ejemplo de como capturar el primer carácter de una cadena con shell/bash scripting. #!/bin/sh firstchar=$(expr substr $cadena 1 1) … [Read more...] about Como capturar el primer carácter en shell scripting o ‘get first char’
Listado Mime type para Internet Information Server
Dejo aquí un listado con los tipos MIME soportados por la versión 5 del Internet Information Server (IIS). Tipos MIME clasificados por … [Read more...] about Listado Mime type para Internet Information Server
Sincronizar automáticamente la hora en Windows
Todos sabeis que se puede modificar la hora de Windows haciendo doble click sobre el reloj de la barra de tareas. Con las nuevas conexiones de tarifa plana que nos mantienen conectados continuamente es una lástima que este trabajo no se haga de forma automática. [Tweet "Se puede configurar Windows para que sincronize la hora mediante NTP "] Se puede configurar Windows para que sincronize la hora mediante NTP desde la misma pantalla de cambio de hora. Para acceder a esta configuración debeis de ir a la pestaña Hora de Internet de la misma ventana y aquí definiís el servidor NTP. Por defecto creo que te propone un servidor NTP propio de Windows. Como no me fio de Windows y no me gusta que me contole una empresa yo prefiero utilizar el servidor de rediris, hora.rediris.es … [Read more...] about Sincronizar automáticamente la hora en Windows
Como sincronizar la hora en Debian
Si dispones de una conexión continua como por ejemplo una ADSL una buena opción es instalarse el paquete ntp. A partir de ese momento tu sistema sincronizará la hora automáticamente sin más confifuración. El paquete ntp se conecta a servidores de tiempo NTP para sincronizar la hora del sistema. Por defecto echa mano de los servidores NTP de ntp.org pero puedes añadir los tuyos propios en el fichero /etc/ntp.conf Por ejemplo hora.rediris.es que seguramente te queda más cerca ;-) Si por lo contrario dispones de una conexión no continua y/o prefieres gobernar la sincronización puedes utilizar el cliente ntpdate que te permite realizar la sincronización de forma manual. Que para que sirve esto? Imagina que debes de desarrollar una aplicación con una arquitectura que incluye varios programas cliente repartidos por varios ordenadores y que cada uno de ellos guarda información en una base de datos local para luego sincronizarla con la base de datos central. Esta información es … [Read more...] about Como sincronizar la hora en Debian
Configuración Subversion en xinetd
Me baso en una debian etch pero seguramente en el resto de distribuciones Linux las diferencias seran pocas. Configuramos una entrada en xinetd para que gestione los accesos al servidor de Subversion. Para ello creamos como root un fichero svn en /etc/xinetd.d con el siguiente contenido: # default: on # Servidor Subversion SVN service svn { socket_type = stream protocol = tcp user = root wait = no disable = no server = /usr/bin/svnserve server_args = -i -r /var/svn/repos port = 3690 } En server_args le estamos diciendo al servidor con el parámetro -r donde se encuentra el root del repositorio de forma qu e este mapeará cualquier acceso hacía el mismo. En este caso el repositorio se encuentra en /var/svn/repos de forma que cuando un usuario acceda mediante el cliente de Subversion al path proyecto el servidor Subversion buscará proyecto dentro de /var/svn/repos, es decir /var/svn/repos/proyecto … [Read more...] about Configuración Subversion en xinetd
Capturar error en la validación de HTML_QuickForm
Suelo utilizar HTML_QuickForm de PEAR para generar los formularios de mis aplicaciones web y lo suelo combinar con Smarty como sistema de plantillas. El HTML_QuickForm realiza una validación a nivel de servidor volcando mensajes predefinidos por el programador en caso de que alguno de los campos no se valide correctamente, por ejemplo se introduce una cadena de texto en un campo numérico. La librería es genial, da mucha flexibilidad y sobretodo simplifica y ordena la validación de los formularios haciendo bastante legible el código. Se me ha planteado el caso donde el formulario es tan grande que se sale de la pantalla y cuando se produce un error en la validación puede que el campo que lo ha producido se encuentre fuera del alcance de la primera página con lo cual el usuario desconoce que se ha producido el error y puede dar por buena la operación. Para estos casos se necesita poder capturar el hecho de que se halla producido un error en la validación cosa que … [Read more...] about Capturar error en la validación de HTML_QuickForm
Escribir un container para autentificación de usuarios contra un array de passwords en claro con PEAR::Auth
Normalmente utilizo PEAR::Auth para autentificar los usuarios contra una tabla de una base de datos. Los passwords en PEAR::Auth se espera que esten encriptados con MD5 siguiendo lo que es una política normal de seguridad. En uno de mis proyectos el cliente requería que las contraseñas se guardaran en plano dentro de un array en un fichero php, lo que les posibilitaba resetear el password de una forma rápida ya que el usuario final solía llamarles pidiendoles que lo hicieran ya que había olvidado la contraseña ;-) El sistema en cuestión era una intranet monousuario de una pequeña web. Para cubrir el requisito he tenido que crear un contenedor en PEAR::Auth que me permite gobernar la forma en que el usuario es validado. Os dejo el código por si a alguien le puede interesar: require_once 'Auth/Container.php'; class PlainPasswordArrayContainer extends Auth_Container { var $passwords; /** * Constructor */ function PlainPasswordArrayContainer($passwords) { // Init Here … [Read more...] about Escribir un container para autentificación de usuarios contra un array de passwords en claro con PEAR::Auth
GnuPG para Windows
Normalmente utilizo la encriptación PGP mediante el comando gpg en la consola de Linux o en Windows bajándome el binario equivalente de la web www.gnupg.org Desde esta página podeis saltar a esta otra, www.gpg4win.org, donde encontrareis la funcionalidad equivalente pero integrada en el botón derecho del ratón de Windows. Puede venir muy bien si no tienes una consola siempre abierta ;-) … [Read more...] about GnuPG para Windows