jueves, 4 de junio de 2009

Programación de módulos para IIS7 (I de IV)



Entre las numerosas horas que me paso programando al cabo del dia, en el último año han tenido máxima prioridad las líneas abordadas en un proyecto sobre IIS7 que desvelaremos cuando llegue su hora, pero mientras tanto, me gustaría hablaros sobre IIS7 y hasta donde se prolongan sus límites mediante programación.

Este será el primero de cuatro post, en los que comentaré desde el principio hasta el final como implementar un nuevo módulo para IIS7 desde 0, que haga lo que vosotros queráis, desde captar una simple petición web que haga algún usuario al servidor, y modificarla a vuestro antojo, a sustituirsela por otro documento, añadirle scripts malignos, lo que vosotros queráis, la imaginación pondrá el límite en esta tarea.

En este, que será el primer post, os voy a introducir en la materia y daros un poco de información sobre el tema empezando por el principio de los tiempos.


¿Que es IIS7?


IIS7 es el servidor que llevan incorporadas las últimas versiones de los sistemas operativos Windows, en concreto IIS 7.0 en las versiones de Windows Vista y Microsoft Server 2008 e IIS 7.5 en su nueva versión para Windows 7 y Microsoft Server 2008 R2. Para los expertos en el tema sabréis que IIS7 se ha visto mejorado con respecto a IIS6 en numerosos aspectos, entre los que destaca la seguridad y sobre todo su aspecto y simplicidad, y es en este último en el que Microsoft puede estar bien orgullosa, porque navegar por el menú gráfico del IIS7 es un verdadero placer:



IIS7 también destaca por su sencillez de configuración, en gran parte conseguido por su interface.

Además, IIS7 ha sido diseñado pensando en los desarrolladores, facilitándoles Starters Kits para la implementación de extensiones para añadirles más características. Para estos últimos también posee un sistema de diagnóstico en tiempo de ejecución, muy útil a la hora de depurar, que ofrece información sobre que peticiones están ejecutándose actualmente, cuánto tiempo llevan ejecutándose, que URLs están siendo invocadas, que cliente las invoca, y cuál es su estado actual. Un verdadero gustazo.

Ahora que ya sabeis un poco mas sobre IIS7, a instalarlo!, tenéis un sencillo manual sobre su instalación en el siguiente link:

http://learn.iis.net/page.aspx/28/installing-iis-70-on-windows-vista/



¿En que programaremos los módulos para IIS7?

Una vez instalado IIS7, y nos hayamos familiarizado con el entorno, comenzaremos a programar nuestro primer módulo. Los módulos para IIS7 los programaremos en C#, en .NET por supuesto :), asi que ir preparando el Visual Studio (2005 o 2008), que el próximo día daremos caña al compilador.

En el próximo post, os comentaré como programar vuestro primer módulo, en él, os enseñaré a crear una extensión para el servidor que capture todas las peticiones web que realicen los usuarios al servidor y a modificarlas, añadiéndoles una línea de texto al final de la página antes de devolversela al usuario. Un ejemplo muy sencillo, pero con el que vereis claramente, que se puede hacer casi cualquier cosa en el servidor desde un simple módulo del IIS.



Saludos!



No hay comentarios: