Artigo: 917265 - Última revisão: terça-feira, 30 de Janeiro de 2007 - Revisão: 2.5
Mensagem de erro quando acederem a computadores cliente que um sejam proxy Web sites que são publicados utilizando o ISA Server 2004: ? 404 não encontrado. O item pedido não foi possível localizar (12028) ?
Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Têm vários Web sites hospedados num servidor Web back-end.
Publicar o servidor Web utilizando o Microsoft Internet Security and Acceleration (ISA) Server 2004.
Utilize a opção pedidos parecem ter do cliente original e a opção reencaminhar o cabeçalho de anfitrião original em vez do real [especificado acima] para configurar a regra de publicação Web.
Neste cenário, se aceder ao Web site de um computador cliente que está por trás de um servidor proxy que coloca em cache ligações directas, poderá receber uma mensagem de erro semelhante à seguinte:
404 Não encontrado. O item pedido não foi possível localizar (12028)
Este problema ocorre se Web publicação ISA Server não é possível estabelecer uma ligação ao servidor Web.
Este problema poderá ocorrer se tem de pedidos do computador cliente externos que são enviados para o ISA Server na mesma ligação de TCP cabeçalhos de anfitrião diferente. Este problema também poderá ocorrer se os pedidos são endereçados para o mesmo servidor Web publicado.
Neste cenário, o ISA Server encerra a ligação que é utilizada para o primeiro pedido de cabeçalho de anfitrião e abre uma nova ligação ao servidor Web publicado quando altera o cabeçalho de anfitrião. ISA Server abre novas ligações ao servidor da Web, uma vez que alguns servidores Web incorrectamente pedidos que são enviadas com cabeçalhos de anfitrião diferente que chegam na mesma ligação de TCP.
Se activar a opção pedidos parecem ter do cliente original , o mesmo IP de origem e a porta é utilizada pelo ISA server quando estabelecer a ligação TCP segunda para o servidor Web publicado. Em seguida, o servidor Web poderá não responder para a segunda ligação TCP tente e poderá receber a mensagem de erro que descreve a secção "Sintomas".
Para resolver este problema, efectue o procedimento seguinte adequado à situação:
Para o ISA Server 2004 Standard Edition em execução no Small Business Server 2003 Premium Edition, instale a correcção seguinte a partir do Centro de transferências da Microsoft:
Para o ISA Server 2004 Standard Edition que não está em execução no Small Business Server 2003 e o ISA Server 2004 Enterprise Edition, instale a correcção descrita no artigo de base de dados de conhecimento da Microsoft 919621.
919621
(http://support.microsoft.com/kb/919621/
)
Descrição do pacote de correcção o ISA Server 2004: 31 de Maio de 2006
? (http://support.microsoft.com/kb/919621/). Tenha em atenção que as informações sobre o script (a frase "Depois de aplicar a correcção, executar o Microsoft Visual Basic script..." a iniciar permanece tal como está. Depois de aplicar a correcção, execute o script do Microsoft Visual Basic que é descrito nesta secção. Para o fazer, siga estes passos.
A Microsoft fornece exemplos de programação apenas, para fins sem garantia expressa ou implícita. Isto inclui, mas não está limitado a, as garantias implícitas de comercialização ou adequação a um fim específico. Este artigo pressupõe que está familiarizado com a linguagem de programação apresentada e as ferramentas que são utilizadas para criar e depurar procedimentos. Os técnicos de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento. No entanto, não modificarão estes exemplos para proporcionarem funcionalidades adicionais nem criarão procedimentos adaptados às necessidades específicas do utilizador.
Clique em Iniciar , aponte para programas , aponte para Acessórios e, em seguida, clique em bloco de notas .
Copie e cole o seguinte código num novo documento o bloco de notas e, em seguida, guardá-lo um nome de ficheiro com uma extensão .vbs como AddReuseSessionForDifferentHostHeader .vbs:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
' Copyright (c) Microsoft Corporation. All rights reserved.
' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE
' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
' HEREBY PERMITTED.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' This script adds a new VendorParametersSets under the array root.
' Used to added new parameters that are needed for hotfixes or service packs.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub AddReuseSessionForDifferentHostHeader()
' Create the root obect.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
Set VendorSets = array.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( "{143F5698-103B-12D4-FF34-1F34767DEabc}" )
If Err.Number <> 0 Then
Err.Clear
' Add the item
Set VendorSet = VendorSets.Add( "{143F5698-103B-12D4-FF34-1F34767DEabc}" )
CheckError
WScript.Echo "New VendorSet added... " & VendorSet.Name
Else
WScript.Echo "Existing VendorSet found... value- " & VendorSet.Value("ReuseSessionForDifferentHostHeader")
End If
if VendorSet.Value("ReuseSessionForDifferentHostHeader") <> true Then
Err.Clear
VendorSet.Value("ReuseSessionForDifferentHostHeader") = true
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done with ReuseSessionForDifferentHostHeader, saved!"
End If
End If
Else
WScript.Echo "Done with ReuseSessionForDifferentHostHeader, no change!"
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
AddReuseSessionForDifferentHostHeader
Faça duplo clique no ficheiro .vbs para executar o script.
Para contornar este problema, utilize a opção pedidos parecem ter do computador do ISA Server em vez da opção que pedidos parecem ter do cliente original para configurar a regra de publicação Web. Para o fazer, siga estes passos:
Inicie a ferramenta de gestão do ISA Server.
Expanda o nó de computador do ISA Server e, em seguida, clique em Política do Firewall do .
Clique com o botão direito do rato a regra de publicação Web que pretende configurar e, em seguida, clique em Propriedades .
Clique no separador para , clique em pedidos parecem ter do computador do ISA Server e, em seguida, clique em OK .
Clique em Aplicar para guardar as alterações e actualizar a configuração.
Nota Esta solução alternativa poderá resolver erros semelhantes gerados pelo servidor Web publicado incorrectamente encaminhamento de tráfego de TCP de retorno para o endereço IP do computador de cliente através do ISA server.
Para desactivar a reutilização de ligações TCP quando o cabeçalho de anfitrião é diferente, execute o seguinte script:
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'
' Copyright (c) Microsoft Corporation. All rights reserved.
' THIS CODE IS MADE AVAILABLE AS IS, WITHOUT WARRANTY OF ANY KIND. THE ENTIRE
' RISK OF THE USE OR THE RESULTS FROM THE USE OF THIS CODE REMAINS WITH THE
' USER. USE AND REDISTRIBUTION OF THIS CODE, WITH OR WITHOUT MODIFICATION, IS
' HEREBY PERMITTED.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' This script removes a VendorParametersSet value.
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub ReuseSessionForDifferentHostHeader()
' Create the root obect.
Dim root ' The FPCLib.FPC root object
Set root = CreateObject("FPC.Root")
'Declare the other objects needed.
Dim array ' An FPCArray object
Dim VendorSets ' An FPCVendorParametersSets collection
Dim VendorSet ' An FPCVendorParametersSet object
' Get references to the array object
' and the network rules collection.
Set array = root.GetContainingArray
Set VendorSets = array.VendorParametersSets
On Error Resume Next
Set VendorSet = VendorSets.Item( "{143F5698-103B-12D4-FF34-1F34767DEabc}" )
If Err.Number <> 0 Then
Err.Clear
WScript.Echo "VendorParametersSet does not exist."
Else
Err.Clear
VendorSet.RemoveValue("ReuseSessionForDifferentHostHeader")
If Err.Number <> 0 Then
CheckError
Else
VendorSets.Save false, true
CheckError
If Err.Number = 0 Then
WScript.Echo "Done removing ReuseSessionForDifferentHostHeader, saved!"
End If
End If
End If
End Sub
Sub CheckError()
If Err.Number <> 0 Then
WScript.Echo "An error occurred: 0x" & Hex(Err.Number) & " " & Err.Description
Err.Clear
End If
End Sub
ReuseSessionForDifferentHostHeader
Normalmente, poderá detectar o erro que este artigo descreve quando o ISA server não consegue contactar o servidor Web publicado.
Esta correcção resolve um cenário muito específico. Antes de aplicar esta correcção, verifique a conectividade básica a partir do servidor ISA para o servidor publicado. Por exemplo, consulte Resolução de nomes, conectividade TCP e, em seguida, utilize um dos soluções sugeridas para confirmar o problema.
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 917265
(http://support.microsoft.com/kb/917265/en-us/
)
Qual foi o esforço que despendeu pessoalmente para utilizar este artigo?
Muito baixo
Baixo
Moderado
Elevado
Muito elevado
Diga-nos porquê e o que podemos fazer para melhorar estas informações
Obrigado! Os seus comentários são utilizados para ajudar-nos a melhorar o conteúdo do nosso suporte. Para obter mais opções de assistência, visite a Home Page de Ajuda e Suporte.