Compartir a través de


Instalar Reporting Services e Internet Information Services en paralelo (modo nativo de SSRS)

Puede instalar y ejecutar SQL Server 2014 Reporting Services (SSRS) e Internet Information Services (IIS) en el mismo equipo. La versión de IIS que usa determina los problemas de interoperabilidad que debe solucionar.

Se aplica a: Modo nativo de Reporting Services
Versión de IIS Problemas Descripción
IIS 6.0, 7.0, 8.0, 8.5 Las solicitudes destinadas a una aplicación las acepta una aplicación diferente.

HTTP.SYS exige reglas de prioridad para las reservas de direcciones URL. Puede que las solicitudes que se envían a aplicaciones con el mismo nombre de directorio virtual y que supervisan de manera conjunta el puerto 80, no alcancen el destino deseado si la reserva de direcciones URL es débil en relación con la reserva de direcciones URL de otra aplicación.
En determinadas condiciones, un extremo registrado que reemplaza otro extremo de dirección URL en el esquema de reserva de direcciones URL podría recibir solicitudes HTTP pensadas para la otra aplicación.

El uso de nombres de directorios virtuales únicos para el servicio web del servidor de informes y el Administrador de informes le ayuda a evitar este conflicto.

En este tema se proporciona información detallada sobre este escenario.

Reglas de precedencia para reservas de direcciones URL

Para poder resolver problemas de interoperabilidad entre IIS y Reporting Services, debe entender las reglas de prioridad de reserva de direcciones URL. Las reglas de prioridad se pueden generalizar en la instrucción siguiente: una reserva de direcciones URL que tiene valores definidos de forma más explícita se encuentra en la primera posición para recibir solicitudes que coinciden con la dirección URL.

  • Una reserva de direcciones URL que especifica un directorio virtual es más explícita que una que omite un directorio virtual.

  • Una reserva de direcciones URL que especifica una dirección única (mediante una dirección IP, un nombre de dominio completo, un nombre de equipo de red o un nombre de host) es más explícita que un carácter comodín.

  • Una reserva de direcciones URL que especifica un carácter comodín fuerte es más explícita que un carácter comodín débil.

Los ejemplos siguientes muestran un intervalo de reservas de direcciones URL, ordenado de más a menos explícito:

Ejemplo Solicitud
http://123.234.345.456:80/reports Recibe todas las solicitudes que se envían a http://123.234.345.456/reports o http://< computername>/reports si un servicio de nombre de dominio puede resolver la dirección IP en ese nombre de host.
http://+:80/reports Recibe las solicitudes enviadas a cualquier dirección IP o nombre de host válido para dicho equipo siempre que la dirección URL contenga el nombre de directorio virtual "reports".
http://123.234.345.456:80 Recibe cualquier solicitud que especifique http://123.234.345.456 o http://<computername> si un servicio de nombres de dominio puede resolver la dirección IP a ese nombre de host.
http://+:80 Recibe solicitudes que no han sido recibidas por otras aplicaciones, para los extremos de aplicación asignados a Todos los asignados.
http://*:80 Recibe solicitudes que no han sido recibidas ya por otras aplicaciones para los puntos de conexión de aplicación mapeados a Todo lo no asignado.

Una indicación de un conflicto de puertos es que verá el siguiente mensaje de error: "System.IO.FileLoadException: El proceso no puede tener acceso al archivo porque otro proceso lo usa. (Excepción de HRESULT: 0x80070020).'.

Reservas de direcciones URL para IIS 6.0, 7.0, 8.0, 8.5 con SQL Server 2014 Reporting Services

Dadas las reglas de prioridad descritas en la sección anterior, puede empezar a entender cómo las reservas de direcciones URL definidas para Reporting Services e IIS promueven la interoperabilidad. Reporting Services recibe las solicitudes que especifican explícitamente los nombres de directorio virtual para sus aplicaciones; IIS recibe todas las solicitudes restantes, que se pueden dirigir a continuación a las aplicaciones que se ejecutan dentro del modelo de proceso de IIS.

Aplicación Reserva de direcciones URL Descripción Confirmación de solicitud
Servidor de informes http://+:80/ReportServer Carácter comodín fuerte en el puerto 80, con directorio virtual del servidor de informes. Recibe todas las solicitudes del puerto 80 que especifican el directorio virtual del servidor de informes. El servicio web del servidor de informes recibe todas las solicitudes a http://< computername>/reportserver.
Administrador de informes http://+:80/Reports Carácter comodín fuerte en el puerto 80, con directorio virtual Reports. Recibe todas las solicitudes del puerto 80 que especifican el directorio virtual de informes. El Administrador de informes recibe todas las solicitudes a http://< computername>/reports.
IIS http://*:80/ Carácter comodín débil en el puerto 80. Gestiona las solicitudes restantes en el puerto 80 que no son manejadas por otra aplicación.

Implementaciones en paralelo de SQL Server 2014 y SQL Server 2005 Reporting Services en IIS 6.0, 7.0, 8.0, 8.5

Los problemas de interoperabilidad entre IIS y Reporting Services se producen cuando los sitios web de IIS tienen nombres de directorio virtual idénticos a los usados por Reporting Services. Por ejemplo, supongamos que tiene la siguiente configuración:

  • Un sitio web en IIS asignado al puerto 80 y un directorio virtual denominado "Reports".

  • Una instancia del servidor de informes de SQL Server 2014 instalada en la configuración predeterminada, donde la reserva de direcciones URL también especifica el puerto 80 y la aplicación administrador de informes también usa "Informes" para el nombre del directorio virtual.

Dada esta configuración, el Administrador de informes recibirá una solicitud que se envía a http://< computername>:80/reports. La aplicación a la que se accede a través del directorio virtual Reports en IIS ya no recibirá solicitudes después de instalar la instancia del servidor de informes de SQL Server 2014.

Si ejecuta implementaciones en paralelo de versiones anteriores y más recientes de Reporting Services, es probable que encuentre el problema de enrutamiento que acaba de describir. Esto se debe a que todas las versiones de Reporting Services usan "ReportServer" y "Reports" como nombres de directorio virtual para el servidor de informes y las aplicaciones del Administrador de informes, lo que aumenta la probabilidad de que tenga directorios virtuales "reports" y "reportserver" en IIS.

Para asegurarse de que todas las aplicaciones reciben solicitudes, siga estas directrices:

  • En el caso de las instalaciones de Reporting Services, use nombres de directorio virtual que aún no usan un sitio web de IIS en el mismo puerto que Reporting Services. Si hay un conflicto, instale Reporting Services en modo de "solo archivos" (con la opción Instalar pero no configure la opción de servidor en el Asistente para la instalación) para que pueda configurar los directorios virtuales una vez finalizada la instalación. Una indicación de que la configuración tiene un conflicto es que verá el mensaje de error: System.IO.FileLoadException: El proceso no puede tener acceso al archivo porque otro proceso lo está usando. (Excepción de HRESULT: 0x80070020).

  • Para las instalaciones que configure manualmente, adopte las convenciones de nomenclatura predeterminadas en las direcciones URL que configure. Si instala SQL Server 2014 Reporting Services (SSRS) como una instancia con nombre, incluya el nombre de instancia al crear un directorio virtual.

Véase también

Configurar direcciones URL del servidor de informes (Administrador de configuración de SSRS)
configurar una dirección URL (Administrador de configuración de SSRS)
Instalar el servidor de informes en modo nativo de Reporting Services