将 RedirectToOptimalOWAServer 设置为 False 后通过代理连接到客户端访问服务器失败

 

上一次修改主题: 2008-02-08

Microsoft Exchange Server 2007 中的 Microsoft Office Outlook Web Access 使用两种方法将用户定向到正确的客户端访问服务器。当组织中存在多个 Active Directory 站点时,所用方法取决于用户邮箱所在的 Active Directory 站点。这两种方法称为重定向和通过代理连接。

有关详细信息,请参阅了解代理和重定向

问题说明

客户端访问服务器和邮箱服务器部署在 Active Directory 站点中。一些客户端访问服务器可能具有外部 URL,并可以从 Internet 进行访问;其他客户端访问服务器可能只有内部 URL,因此只能从组织的 Intranet 进行访问。

如果您具有两个 Active Directory 站点(每个站点都包含一个具有外部 URL 的客户端访问服务器),则用户可以连接到站点 1 中的客户端访问服务器,尽管其邮箱在站点 2 中。Outlook Web Access 会将该用户重定向到站点 2 中的客户端访问服务器,或者使该用户通过代理连接到站点 2 中的客户端访问服务器。

默认情况下,Outlook Web Access 将用户重定向到站点 2 中客户端访问服务器的外部 URL。但是,如果将 RedirecttoOptimalOWAServer 参数设置为 false,则 Outlook Web Access 将尝试通过代理连接到站点 2 中客户端访问服务器的外部 URL,而忽略内部 URL。

如果站点 2 中的客户端访问服务器不能从 Internet 进行访问,则使用户从站点 1 中的客户端访问服务器通过代理连接到站点 2 中的客户端访问服务器时,他们会收到 HTTP 404(页面未找到)错误。再现该问题的步骤如下:

  1. 设置通过代理来连接,以便站点 2 中的用户可以通过站点 1 中的客户端访问服务器访问其邮箱,而无须重新输入其凭据。

  2. 在站点 2 中的客户端访问服务器上创建外部 URL(与内部 URL 不同)。

  3. 在站点 1 中的客户端访问服务器上,使用 Set-OwaVirtualDirectory cmdlet 将 RedirecttoOptimalOwaServer 参数设置为 false。有关详细信息,请参阅 Set-OwaVirtualDirectory

  4. 阻止从 Internet 访问站点 2 中的客户端访问服务器。执行此操作的一种简单方法是删除外部 URL 的 DNS 项。

  5. 使用站点 1 中客户端访问服务器的 URL 登录到站点 2 中的邮箱。

在站点 1 中的客户端访问服务器上将 RedirecttoOptimalOwaServer 参数设置为 false 的情况下,用户将通过代理连接到站点 2 中客户端访问服务器上的外部 URL。如果站点 2 中的客户端访问服务器失去与 Internet 的连接,则用户将收到 404 错误(页面未找到)。

若要解决此问题,同时还不允许从 Internet 访问站点 2 中的客户端访问服务器,请使用 Exchange 管理控制台或 Exchange 命令行管理程序将站点 2 中客户端访问服务器的外部 URL 设置为 null。

开始之前

若要执行此步骤,必须为您使用的帐户委派 Exchange Server 管理员角色以及目标服务器的本地 Administrators 组成员身份。

有关管理 Exchange 2007 所需的权限、角色委派以及权利的详细信息,请参阅权限注意事项

步骤

可以使用 Exchange 管理控制台或 Exchange 命令行管理程序将 /owa 虚拟目录的外部 URL 设置为 null。

使用 Exchange 管理控制台删除通过代理连接到的客户端访问服务器上的外部 URL

  1. 在 Exchange 管理控制台中,单击“服务器配置”,再单击“客户端访问”。

  2. 在工作窗格中,选择通过代理连接到的客户端访问服务器,然后选择 /owa 虚拟目录。

  3. 单击 Outlook Web Access 选项卡。

  4. 右键单击 /owa 虚拟目录,然后单击“属性”。

  5. 在虚拟目录属性对话框中,单击“常规”选项卡。

  6. 删除“外部 URL”中的值。

  7. 单击“确定”保存更改并关闭属性窗口。

使用 Exchange 命令行管理程序将通过代理连接到的客户端访问服务器上的外部 URL 设置为 null

  1. 登录到通过代理连接到的客户端访问服务器。

  2. 运行以下命令将默认网站上 /owa 虚拟目录的外部 URL 设置为 null:

    Set-owavirtualdirectory -identity "owa (default web site)" -ExternalURL $Null
    

有关语法和参数的详细信息,请参阅 Set-OwaVirtualDirectory