[HOW TO] ¿Como Publicar un WebService en Windows 7 o Windows 2008 Server utilizando el Internet Information Services (IIS) 7 o 7.5?
Como bien dice el título, vamos a Publicar un Web Service, en este caso programado en Delphi pero sirve para todos los WS hechos en cualquier plataformar, ya que el resultado es el mismo: una dll o un ejecutable.
Primero que nada, tenemos que realizar ciertos ajustes de configuraciones para que esto funcione. Para ello nos dirijimos al Inicio -> Panel de Control -> Programas y Caracteristicas -> Activar o Desactivar las Caracteristicas de Windows y aqui hay que tildar las opciones tal cual se muestra en la imagen.
Ya con dicha configuración realizada, podemos ahora si continuar con nuestro Web Service.
Lo primero, es tomar nuestro archivo dll (o exe, según sea) de nuestro Web Service, y copiarlo dentro de una carpeta cualquiera en la ruta C:inetpubwwwroot. Para el ejemplo creamos la carpeta "WebService" y copiamos el archivo en ella.
Hasta aquí, solamente hemos trabajado fuera del Internet Information Services. De ahora en adelante, son todas configuraciones dentro del IIS. Para llegar a el nos dirijimos al Inicio -> Panel de Control -> Herramientas administrativas -> Administrador de Internet Information Services (IIS).
Desplegando el Servidor y los Sitios veremos la carpeta creada anteriormente.
El siguiente paso es Agregar el Directorio Virtual que va a contener nuestro Web Services. Para esto, con el botón derecho sobre el Sitio (en este caso de ejemplo es es el Sitio por Defecto o Default) y elegimos "Agregar Directorio Virtual..."
En la ventana que se abre, escribimos como "Alias" el mismo nombre de la Carpeta creada (WebService en este caso), y le damos la ruta de acceso a nuestro archivo, aquí sería C:inetpubwwwrootWebService
Una vez creado el Directorio Virtual, se distingue pues parece como un acceso directo a la carpeta que creamos, hay que configurar ciertas cuestiones sobre el Web Services.
En primera medida, estando posicionados sobre el Servidor, y viendo todas las acciones disponibles, seleccionamos Restricciones de ISAPI y CGI
En esta pantalla, hay que agregar nuestro archivo para permitirle ejecutarse como Web Service.
Al agregarlo, le decimos la ruta completa donde esta ubicado fisicamente nuestro archivo dll (o exe), le damos un nombre, y se tilda la opción de Permitir ejecución de la ruta de extensión
Y una vez agregado, verificamos en Modificar configuración de caracteristica... que todos los permisos esten tildados.
Y eso es todo!
En nuestro navegador preferido colocamos la direcciones, ya ya tenemos nuestro Web Service publicado!
ACLARACION:
Si el Sistema Operativo llega a ser de 64bits y nuestra dll o ejectuble esta hecho para correr sobre 32bits, hay que agregar un par de pasos mas.
En Grupo de Aplicaciones, ubicamos nuestro Sitio y haciendo click derecho sobre el mismo seleccionamos Configuracion avanzada.
En la ventana que se abre hay que pasar a Verdadero la opción de Habilitar Aplicaciones de 32-Bits
BONUS:
Dejo un link de como hacer lo mismo, pero con las versiones anteriores de IIS y Windows XP donde era mucho mas facil.
Saludos a todos!!