多重執行個體報表伺服器部署的 URL 保留項目
如果您在相同電腦上安裝多個 Reporting Services 執行個體,您就必須考慮要如何為每一個執行個體定義 URL 保留項目。 在每一個執行個體中,報表伺服器 Web 服務和入口網站至少各必須有一個 URL 保留項目。 完整的保留項目集合在 HTTP.SYS 中必須是唯一的。
在 URL 註冊期間偵測到重複的 URL,這是在此服務啟動時發生。 如果您建立非唯一的 URL 保留項目,則要等到您啟動此服務之後,才可偵測到名稱衝突。 因此,請務必遵循命名慣例或規則,以確保所有的值都是唯一的。
預設命名慣例
Reporting Services 可以安裝在 SQL Server 具名執行個體內。 當您在具名執行個體內安裝或設定報表伺服器時,執行個體名稱會自動包含在 Reporting Services 提供之預設 URL 保留項目的虛擬目錄中。 下表將顯示預設執行個體和具名執行個體的 URL 保留項目。
SQL Server 執行個體 | 預設 URL 保留項目 |
---|---|
預設值 (MSSQLServer) | https://+:80/reportserver |
已命名 (MynamedInstance) | https://+:80/reportserver_MyNamedInstance |
如果是具名執行個體,虛擬目錄會包含此執行個體名稱。 預設執行個體和具名執行個體都會接聽相同的通訊埠,但是唯一的虛擬目錄名稱會決定哪一個報表伺服器取得要求。
最佳做法建議是使用虛擬目錄名稱來區分報表伺服器執行個體, 這樣會清楚對應 URL 與目標執行個體,並確定應用程式名稱在整個系統中都是唯一的。
自訂命名慣例
雖然建議使用執行個體名稱,但是您可以使用 URL 語法和自己的命名慣例,以符合 URL 保留項目的唯一名稱條件約束。 下列範例說明為每一個執行個體建立唯一 URL 的不同方式。
報表伺服器預設執行個體 (MSSQLSERVER) | ReportServer_MyNamedInstance | 唯一性 |
---|---|---|
https://+:80/reportserver |
https://+:8888/reportserver |
每個執行個體會接聽不同的通訊埠。 |
https://www.contoso.com/reportserver |
https://SRVR-46/reportserver |
每一個執行個體都會對應到不同的伺服器名稱 (完整網域名稱和電腦名稱)。 |
唯一性規定
Reporting Services 使用的基礎技術對於唯一的名稱有一些規定。 HTTP.SYS 要求它的儲存機制內的所有 URL 都必須是唯一的。 您可以讓通訊埠、主機名稱或虛擬目錄名稱不同,以建立唯一的 URL。 ASP.NET 要求相同處理序內的應用程式識別必須是唯一的。 這項規定會影響虛擬目錄名稱, 它指定您不能在相同的報表伺服器執行個體內重複虛擬目錄名稱。