HTTP 錯誤的疑難排解
更新: 2007 年 9 月 15 日
這一節描述嘗試設定 Reporting Services 元件時,可能發生的 HTTP 錯誤。按一下下列連結,閱讀這個主題中的特定錯誤:
HTTP 400 要求錯誤
HTTP 400 要求錯誤
如果您使用非預設的網站,或修改用來存取報表伺服器或報表管理員的網站或虛擬目錄屬性,可能會因為不完整或無效的設定而發生 HTTP 400 錯誤。
裝載在非預設網站上的報表管理員
當您存取報表管理員 (例如,在瀏覽器視窗的 URL 網址輸入 https://servername/reports) 時,如果發生這個錯誤,請執行下列步驟:
- 在 Internet Information Services (IIS) 管理員,檢查您用來主控報表伺服器之網站的網站屬性,是否將 [IP 位址] 設定成 [(全未指派)]。
- 如果錯誤仍然發生,而且您透過非預設網站存取報表伺服器,則報表管理員用來存取報表伺服器的 URL 可能不正確。如需如何更新組態檔中 URL 的指示,請參閱<如何:設定 Reporting Services 使用非預設網站 (Reporting Services 組態)>或參閱 Microsoft 知識庫中的<當您嘗試在 SQL Server 2005 Reporting Services 中開啟報表管理員工具時,出現錯誤訊息:要求失敗,HTTP 狀態 400:要求錯誤,或:嘗試連接到報表伺服器失敗>。
裝載在預設網站上的報表伺服器
當您存取報表伺服器 (例如,在瀏覽器視窗的 URL 網址輸入 https://servername/reportserver) 時,如果發生這個錯誤,最可能的原因就是無效的 IIS 安裝,特別是報表伺服器裝載在預設的網站上。如果要檢查預設網站的 IIS 設定,請查看 IIS Metabase (metabase.xml) 中的值:
- 在文字編輯器中開啟 metabase.xml。根據預設,這個檔案位在 %windir%\system32\inetserv。
- 找出 <IIsWebServer Location =”/<servername>/W3SVC/1”>
- 確認最後的值為 1。如果最後的值不是 1,而預設網站有無效的組態,您可能要考慮重新安裝 IIS。
HTTP 401 拒絕存取
這個錯誤表示在主控報表伺服器虛擬目錄之站台上的 IIS 設定發生問題。如果 IIS 設定不完整或對報表伺服器虛擬路徑無效,則會發生 HTTP 401 錯誤。
透過完整的網域名稱或主機標頭來存取本機報表伺服器執行個體。
如果您使用完整的網域名稱 (FQDN) 或自訂主機標頭來瀏覽主控報表伺服器的本機網站,而該伺服器位於執行 Microsoft Windows XP Service Pack 2 (SP2) 或 Microsoft Windows Server 2003 Service Pack 1 (SP1) 的電腦上,則會發生 HTTP 401 錯誤。
此錯誤的發生原因是當 FQDN 或自訂主機標頭不符合本機電腦名稱時,會導致拒絕存取錯誤的回送檢查安全性功能。如需如何解決這項錯誤的詳細資訊和指示,請參閱 Microsoft 知識庫中的<解決瀏覽使用整合驗證之網站時發生的 401.1 錯誤>(英文)。
使用本機帳戶或網域使用者帳戶
在使用具有受條件約束委派的 Kerberos 安全環境中,如果您已設定應用程式集區在網域使用者帳戶之下執行,但是並未針對此網域帳戶建立服務主要名稱 (SPN),則可能會發生 HTTP 401 錯誤。以下連結提供有關在 ASP.NET 應用程式中使用自訂帳戶的其他資訊:
如何:針對 ASP.NET 2.0 應用程式建立服務帳戶 (英文)
存取報表產生器
如果您嘗試開啟「報表產生器」,而報表伺服器已經設定為表單驗證,或您嘗試在與包含報表伺服器不同網域的電腦上開啟「報表產生器」,可能會發生 HTTP 401 錯誤。如需如何解決這個錯誤的指示,請參閱<設定報表伺服器供報表產生器存取>。
HTTP 403 禁止
當存取 Reporting Services 應用程式檔案的權限遭到拒絕時,就會發生這個錯誤:
- 檢查指派給包含報表伺服器 Web 服務之應用程式集區的帳戶,是否為 IIS_WPG 安全性群組的成員。
- 檢查 ASP.NET 上的授權規則,是否允許存取 Web 服務。在預設安裝中,所有使用者 (*) 都允許存取 ASP.NET。如果用來存取報表伺服器之網站上的 ASP.NET 授權設定有自訂設定,請檢查是否允許 Web 服務帳戶存取。如果要檢查授權規則,請開啟 IIS 管理員,在網站屬性上按一下滑鼠右鍵,依序按一下 [ASP.NET]、[編輯全域組態]、[授權],然後檢視 [本機授權] 規則。
HTTP 404 找不到檔案或目錄
此錯誤會指出虛擬目錄組態的問題。
- 如果您透過非預設網站存取報表伺服器,而且發生這個錯誤,請檢查在自訂網站上設定報表伺服器的所有步驟,確認所有步驟都已經執行。如需詳細資訊,請參閱<如何:設定 Reporting Services 使用非預設網站 (Reporting Services 組態)>。
- 檢查報表伺服器虛擬目錄屬性是否都設定正確。如果是 SQL Server 2005 Reporting Services,則 ASP.NET 版本應設定為 2.0.50727。萬用字元應用程式對應應設定為 aspnet_isapi.dll。如果在報表伺服器虛擬目錄上要得到重新設定屬性的最佳結果,請執行下列步驟:
- 開啟 Reporting Services 組態工具。
- 在 [報表伺服器虛擬目錄] 頁面上,選取 [套用預設值],然後按一下 [套用]。
- 在 [Web 服務識別] 頁面,重新選取您正在使用的帳戶,然後按一下 [套用]。
- 檢查您指定的 URL 是否可供正確部署。如果您透過特定連接埠存取 Reporting Services,而您將此連接埠指派給網站,則必須將此連接埠包含在 URL 中。例如,如果您將連接埠 8080 指派給預設網站,則 URL 應為 https://servername:8080/reportserver。
- 如果您將 Reporting Services 安裝成具名執行個體,則預設虛擬目錄要包含該執行個體名稱。如果要檢查虛擬目錄名稱,請使用 Reporting Services 組態工具開啟 [報表伺服器虛擬目錄] 頁面,和 [報表管理員虛擬目錄] 頁面。
如果您安裝了 SQL Server Express Edition with Advanced Services,則預設虛擬目錄名稱會與預設其他版本的名稱不同。例如,如果您習慣使用 https://localhost/reports 來存取 Developer Edition 的報表管理員,則必須使用 https://localhost/reports$SQLExpress 來存取 Express Edition with Advanced Services 的報表管理員。
HTTP 500 內部伺服器錯誤
Reporting Services 需要 Microsoft .NET Framework 2.0 版或更新版本。如果報表伺服器或報表管理員虛擬目錄對應至 1.1.4322 或更舊的版本,就會發生此錯誤。若要檢查應用程式對應,請導覽至報表伺服器虛擬目錄,然後以滑鼠右鍵按一下 [屬性]。在 [虛擬目錄] 索引標籤上,按一下 [組態],捲動至 .aspx 副檔名,然後讀取 [可執行檔路徑] 值。如果設定為 v1.1.4322 或更舊的版本,您必須將虛擬目錄設定為使用 2.0 版。請遵循知識庫文件 306005 中所提供的指示,在 IIS 中註冊特定版本的 .NET Framework。
在電腦上註冊 ASP.NET 2.0 之後,您應在 Reporting Services 組態工具中重新設定 IIS 並重新指定報表伺服器和報表管理員虛擬目錄。
請參閱
概念
Reporting Services 部署中的連接和帳戶
Reporting Services 記錄檔
其他資源
Reporting Services 的疑難排解
Reporting Services 錯誤和事件
說明及資訊
變更歷程記錄
版本 | 歷程記錄 |
---|---|
2007 年 9 月 15 日 |
|
2006 年 7 月 17 日 |
|