lunes, 8 de diciembre de 2014

Actualizar de PHP 5.3 a PHP 5.4 usando CentOS y Virtualmin para poder usar Moodle 2.7 o posteriores.

Hace poco tuve que actualizar Moodle a 2.8+ y utilice el repo de Remi tal como dicen en otros posts que se encuentran al googlear.

El problema es que al final, los sites no cargaban, sólo páginas en blanco.

Encontré este link:
http://reviews.myhken.com/upgrading-php-from-5-3-x-to-5-4-x-or-5-5-x-on-centos-6-5-with-virtualmin/

Y aunque funciona bien parcialmente, el problema es que los sites corriendo como php_mod ya no funcionaban.

Lo resolví así:

Renombré /etc/httpd/conf.d/php.conf como php.conf.no tal como decían en el link.
Pero en su lugar copié php.conf de otro servidor que aún tenía php 5.3:
#
# PHP is an HTML-embedded scripting language which attempts to make it
# easy for developers to write dynamically generated webpages.
#

  LoadModule php5_module modules/libphp5.so


  LoadModule php5_module modules/libphp5-zts.so

#
# Cause the PHP interpreter to handle files with a .php extension.
#
AddHandler php5-script .php
AddType text/html .php
#
# Add index.php to the list of files that will be served as directory
# indexes.
#
DirectoryIndex index.php
#
# Uncomment the following line to allow PHP to pretty-print .phps
# files as PHP source code:
#
#AddType application/x-httpd-php-source .phps
Y nada más, ya no modifiqué /etc/httpd/conf/httpd.conf para quitar las líneas que empezaran por php_ (ni reemplazándolas por #php_).

Aparentemente todo el problema es causado por las líneas SetHandler del nuevo archivo php.conf.

Con esta configuración, funciona PHP 5.4 con cualquiera de los tres modos: mod_php, cgi o fcgi.

De todos modos, la instalación de Moodle la tuve que hacer con el modo CGI:
https://moodle.org/mod/forum/discuss.php?d=221196

sábado, 26 de abril de 2014

Tener un televisor full-hd y no poder elegir la resolución correcta desde Windows

¿Te ha pasado que tienes una pantalla full-hd pero al conectarla a tu laptop con un cable VGA sólo puedes elegir hasta 1366x768 o alguna otra resolución inferior? ¿O te pasa que la imagen se ve estirada, distorsionada o borrosa? ¿Notas que las letras no se ven con la misma nitidez que en la pantalla de la laptop?

Esto ocurre cuando Windows no puede manejar correctamente la pantalla, porque esta última le da información errada sobre sus características. Existe una pequeña herramienta gratuita llamada Custom Resolution Utility (CRU) que puede resolverlo.

Resulta muy fácil: ejecutamos el programa del link mencionado antes, descomprimimos el zip (no hace falta instalarlo) y ejecutamos cru.exe. La imagen que veremos será como esta:


En la parte superior hay un selector donde deberemos elegir la pantalla que queremos modificar. En la imagen mostrada ya he seleccionado mi pantalla LCD y ya he agregado una resolución que no estaba disponible: 1920x1980 (16:9) @ 60 Hz. Para ello todo lo que hay que hacer es usar el botón ADD de la lista "Standard resolutions":


Elegimos la resolución full-hd tal como se muestra, pulsamos OK para regresar a la ventana principal y estando allí volvemos a pulsar OK. Reiniciamos el equipo y listo, problema resuelto!

Si deseas saber por qué ocurre, aquí una breve explicación: las pantallas plug & play comparten información sobre sus capacidades mediante un formato de datos llamado EDID (Extended display identification data). Algunas pantallas brindan información incompleta o incorrecta, lo que causa que Windows no pueda manejar correctamente el dispositivo.

Es posible proporcionarle manualmente a Windows estos datos (lo mismo que haría un driver), pero implica manipular el registro. Aquí es donde CRU nos resulta muy útil, ya que nos permite fácilmente "agregar" una resolución específica que teóricamente nuestra pantalla no soporta. Por supuesto debemos tener cuidado porque algunas pantallas muy antiguas podrían incluso averiarse, pero cualquier televisor decente mostrará un aviso de "resolución no soportada".