Problemas de aplicativos da Web (erros do web.config) HTTP 500.19 com IIS7.5 e ASP.NET v2


146

Isso está deixando toda a equipe louca. Deve haver uma parte simples e mal configurada do IIS ou do nosso servidor Web, mas toda vez que tentamos executar o ASP.NET Web Application no IIS 7.5, obtemos o seguinte erro ...

Aqui está o erro completo:

HTTP Error 500.19 - Internal Server Error

The requested page cannot be accessed because the related configuration  
data for the page is invalid.

`Detailed Error Information` 
Module              IIS Web Core
Notification        Unknown
Handler             Not yet determined
Error Code          0x8007000d
Config Error
Config File         \\?\E:\wwwroot\web.config
Requested URL       http://localhost:80/Default.aspx
Physical Path 
Logon Method        Not yet determined
Logon User          Not yet determined
Config Source
   -1: 
    0: 

A máquina está executando o Windows Server 2008 R2 . Estamos desenvolvendo nosso aplicativo Web usando o Visual Studio 2008 .

De acordo com a Microsoft, o código 8007000d significa que há um erro de sintaxe em nosso web.config - exceto que o projeto cria e executa bem localmente. Observar o web.config no XML Notepad também não traz nenhum erro de sintaxe. Estou assumindo que deve ser algum tipo de configuração ruim da minha parte ...?

Alguém sabe onde posso encontrar mais informações sobre o erro? Nada está sendo exibido no EventViewer :(

Não tenho certeza do que mais seria útil mencionar ...

A assistência é muito apreciada. Obrigado!

ATUALIZAÇÕES! - POSTADO WEB.CONFIG ABAIXO

Ok, desde que publiquei a pergunta original acima, localizei as linhas precisas no web.config que estavam causando o erro.

Aqui estão as linhas (elas aparecem entre as <System.webServer>tags) ...

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpHandlers>

Nota: Se eu excluir as linhas entre o <httpHandlers>AINDA, recebo o erro. Eu literalmente tenho que excluir <httpHandlers>(e as linhas entre) para parar de receber o erro acima.

Depois de fazer isso, recebo um novo erro 500.19, no entanto. Felizmente, desta vez o IIS realmente me diz qual parte do web.config está causando um problema ...

    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>

Observando essas linhas, fica claro que o problema foi migrado ainda mais dentro da mesma <system.webServer>tag para a <handlers>tag.

O novo erro também é mais explícito e reclama especificamente que não reconhece o atributo "validar" (como visto na terceira linha acima). A remoção desse atributo faz com que se queixe de que a mesma linha não possui o atributo "nome" necessário. A adição desse atributo gera o erro do ASP.NET ...

Não foi possível carregar o arquivo ou assembly 'System.web.Extensions, Versão = 1.0.61025.0, Culture = neutral, PublicKeyToken = f2cb5667dc123a56' ou uma de suas dependências. O sistema não pode encontrar o arquivo especificado.

Obviamente, acho que esses novos erros surgiram da exclusão das <httpHandlers>tags em primeiro lugar - elas são obviamente necessárias pelo aplicativo -, então a pergunta permanece: por que essas tags causariam um erro no IIS em primeiro lugar? ??

Preciso instalar algo no IIS para fazê-lo funcionar com eles?

Obrigado novamente por qualquer ajuda.

WEB.CONFIG

Aqui estão os bits problemáticos da nossa web.Config ... Espero que isso ajude alguém a encontrar o nosso problema!

<system.Web>

<!-- stuff cut out -->

    <httpHandlers>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56" validate="false"/>
    </httpHandlers>
    <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </httpModules>
</system.web>

<system.webServer>
    <validation validateIntegratedModeConfiguration="false"/>
    <modules>
        <add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </modules>
    <remove verb="*" path="*.asmx"/>
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    <handlers>
        <remove name="WebServiceHandlerFactory-Integrated"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory,System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
        <add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=f2cb5667dc123a56"/>
    </handlers>
</system.webServer>

Remova todos os comentários no web.config. Eles começam <!-- e terminam com -->.
Alex Bagnolini 27/11/2009

woot. é algo a ver com <httpHandlers> #
Chuck Le Butt

Isso está sendo executado no modo integrado? Nesse caso, tente o modo Clássico.
Jeremy McGee

@ Alex - eu removi todos os comentários, não ajudou. Obrigado pela sugestão, no entanto.
Chuck Le Butt

@ Joe Eu não acho que vou postar o web.config inteiro. Provavelmente não seria sábio ...: - /
Chuck Le Butt

Respostas:


263

Eu tinha esses sintomas exatos e meu problema era semelhante ao de Peter. Estava configurando um projeto existente em um novo servidor. Meu projeto fez referência ao módulo de reconfiguração de URL do IIS7, mas que ainda não havia sido instalado no novo servidor. A instalação corrigiu meu problema.

Você pode usar o Microsoft Web Platform Installer para instalá-lo. Execute-o, selecione Produtos , no menu esquerdo, selecione Servidor e localize a Regravação de URL na lista e instale-a.

Ou você pode baixá-lo aqui .


2
> Tive esses sintomas exatos e meu problema foi semelhante ao de Peter. Estava configurando um projeto existente em um novo servidor. Meu projeto fez referência ao módulo de reconfiguração de URL do IIS7, mas que ainda não havia sido instalado no novo servidor. A instalação corrigiu meu problema. Obrigado, DJjeffJ. Corrigido para mim. URL rewirte module no servidor dev não instalado.
jk.

1
Sim ... eu também tinha o .net 3.5, então o ajax já estava incluído, mas a reescrita não está.
WildJoe


5
4 anos depois e isso ainda é um problema. Não há absolutamente nada no erro para fornecer qualquer indicação sobre a origem do problema. Eu também estava movendo uma solução existente para um novo servidor que ainda não tinha o módulo ativado e foi apenas por acaso que deparei com essa resposta e agradeço muito por estar arrancando os cabelos!
ProNotion 22/08/14

4
O problema continua com o Server 2016, não há recurso / módulo para instalar que diga "URL Rewrite". Você deve usar o para instalá-lo e, depois disso, meu site funcionou (ou pelo menos parou de fornecer esse problema).
Rob

41

Depois de lutar com isso por um dia em uma nova máquina, me deparei com os seguintes links. Estava faltando os módulos de reescrita. Isso consertou tudo.

http://forums.iis.net/t/1176834.aspx

http://learn.iis.net/page.aspx/460/using-the-url-rewrite-module/


1
+1. O web.config que peguei no TFS tinha <rewrite>tags, mas não tinha o urlrewrite instalado. Comentei o <rewrite>material e meu site foi compilado e carregado imediatamente.
Pete

1
Demorou uma hora para lembrar que eu costumava reescrever no site. Desejo que a Microsoft tenha um melhor sistema de mensagens de erro do compilador. Eu resolveria o problema em questão de minutos se visse a linha exata do web.config.
Dvdmn

Como você instala a reescrita de URL no Visual Studio para IIS Express?
Dima

40

Aha! Eu venci esse problema! Meu Deus, era uma besta para alguém como eu, com experiência limitada no IIS. Eu realmente pensei que passaria o fim de semana inteiro consertando.

Aqui está a solução para qualquer um que já venha com esse problema do mal.

Primeira coisa a ter em atenção: se você espera que esta seja a sua solução, verifique se você tem o mesmo código de erro ( 0x8007000d ) e origem de configuração ( -1: 0 :). Caso contrário, esta não é a sua solução.

Próxima coisa a ter em atenção: O AJAX não está instalado corretamente no seu web.config!

Corrija isso seguindo este guia:
http://www.asp.net/AJAX/documentation/live/ConfiguringASPNETAJAX.aspx

Em seguida, instale as extensões AJAX 1.0 no servidor de produção, a partir deste link:

http://www.asp.net/ajax/downloads/archive/
Atualização : A Microsoft parece ter removido a página acima :(

É isso aí!


1
obrigado! As extensões AJAX foram o problema. Eu comentei essa seção desde que o AJAX agora está embutido no 3.5
jdiaz

1
Parece que a Microsoft quebrou o primeiro link para configurar o ASP.NET AJAX.
Rob Sobers

1
Encontrou um espelho do conteúdo antigo. Tão irritante a maneira como a documentação do MS desaparece com tanta frequência.
chuck le

4
Sua resposta sugere que esse erro é APENAS para o Ajax, mas também se aplica ao urlrewrite, o que significa que o erro provavelmente se refere apenas a qualquer sugestão dependente de um módulo que não esteja disponível.
Rainbba

@ Chuck, o que significa "Eu me sinto como Rocky" ?
Pacerier 27/08/2015

16

Mesmo problema no Server 2016, IIS 10, erro 500.19. Eu instalei o módulo de redirecionamento e funcionou. Não sei por que isso não foi incluído por padrão.

https://www.iis.net/downloads/microsoft/url-rewrite#additionalDownloads

Para ficar claro, parece que o web.config do IIS 7 funcionará ou foi projetado para funcionar, mas a falta desse módulo gera um erro realmente estranho e inútil. O Google leva você a uma página da Microsoft que insiste em que seu site está corrompido ou seu web.config está corrompido. Nem parece ser o caso.

Essa página inútil está aqui: https://support.microsoft.com/en-us/kb/942055


12

Teve o mesmo problema que o anterior, o mesmo código de erro etc. Depois de baixá-lo, tudo estava bem. :)


Cara, você me salvou muito tempo ... Legal !!
PhillyNJ

Semelhante, esta mensagem de erro é completamente inútil!
Ken Keenan

8

Acabei de adicionar uma resposta porque passei horas tentando resolver os mesmos sintomas (mas problema diferente):

Uma causa possível é uma DLL x86 em um pool de aplicativos de 64 bits; a solução é habilitar aplicativos de 32 bits nas configurações do pool de aplicativos.


Esta resposta é válida para o erro 500.19 durante a instalação do Umbraco CMS também.
Aron.lakatos 19/09/16

4

Para mim, registrar novamente o asp.net para o iis fez o truque. Espero que ajude alguém.

aspnet_regiis.exe -i

4

Para resumir com base nas respostas aqui e em outros lugares:

  1. Verifique a versão .NET do pool de aplicativos (por exemplo, 2.0 vs 4.0)
  2. Verifique se todos os módulos referenciados do IIS estão instalados. Nesse caso, eram as extensões AJAX (provavelmente não é o caso hoje em dia), mas a reescrita de URL é comum.

4

Outra maneira de obter 500.19 errot sem motivo aparente é - falta de diretórios e / ou permissões quebradas neles.

No caso desta pergunta, acredito que a pergunta seja sobre a versão completa do IIS. Eu assumo isso por causa desta linha:

Config File         \\?\E:\wwwroot\web.config

O instalador do IIS geralmente cria o wwwrootarquivo para você e essa é a pasta raiz padrão para todos os sites e ponto de montagem para diretórios virtuais. Ele sempre existe, então não há problema, você geralmente não se importa muito com isso.

Como os arquivos web.config são hierárquicos, você pode colocar um arquivo web.config mestre e ter algumas configurações de raiz, e todos os sites o herdarão. O IIS verifica se esse arquivo existe e tenta carregá-lo.

No entanto, a primeira parte divertida:

Este diretório existe se você tiver o IIS instalado corretamente. Se não existir, você receberá um erro de 500 classes. No entanto, se você jogar com permissões de arquivo / diretório, especialmente as avançadas, poderá negar acidentalmente conta de serviço do IIS da verificação / leitura do conteúdo deste diretório. Se o IIS não puder verificar se esse wwwroot \ web.config existe ou se o IIS não pode abrir e ler - bam - erro da classe 500.

No entanto, para o IIS completo, é muito improvável. Os desenvolvedores / administradores que trabalham com o IIS completo geralmente são relutantes em brincar com wwwrootele, por isso geralmente permanece configurado corretamente.

No entanto, no IIS Express ..

Normalmente, o IIS Express "simplesmente funciona". Freqüentemente, os desenvolvedores que usam o IIS Express geralmente não sabem o quanto ele se assemelha internamente ao IIS real.

Você pode facilmente se deparar com o fato de que o IIS Express possui seu próprio arquivo applicationHost.config e o VS o cria e gerencia para você (corretamente, até certo ponto) e esse tipo de revelação dizendo que não é tão simples e preciso. e clique como parece à primeira vista.

Além desse arquivo de configuração, o VisualStudio também cria uma estrutura de diretórios vazia na sua Documentspasta. Se bem me lembro, o IIS Express considera essas pastas os diretórios raiz do (s) seu (s) site (s) nos quais os diretórios virtuais com seu código são montados.

Mais tarde, assim como o IIS, quando o IIS Express é iniciado, ele espera que essas pastas existam e verifica os arquivos raiz web.config lá. Os arquivos web.config do site . Quase sempre, esses arquivos web.config estão ausentes - e tudo bem, porque você não os deseja - você tem seu ** aplicativo web.config ", eles são colocados com o restante do conteúdo em diretórios virtuais.

Agora, a segunda parte divertida é: o IIS Express espera que os diretórios vazios. Eles podem estar vazios, mas precisam existir. Se eles não existirem, você receberá um erro de 500 classes informando que o arquivo "web.config" nesse caminho não pode ser acessado.

A primeira vez que deparei com esse problema foi quando estava limpando meu disco rígido. Descobri que a pasta 'documents \ websites', cheia de lixo, reconheci vários projetos de um ano em que não trabalho mais, todos vazios, sem um único arquivo, e excluí tudo. Uma semana depois - bam - não consigo executar / depurar nenhum dos sites em que estava trabalhando no momento. O erro foi 500.19, não é possível ler o arquivo de configuração.

Portanto, se você usa o IIS Express e vê o erro de 500 classes informando sobre a configuração de leitura, verifique cuidadosamente a mensagem de erro e leia todos os caminhos mencionados. Se você vir algo como:

c:\users\user\documents\visual studio 2013\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2015\projects\WebProject1\WebProject1.web\web.config
c:\users\zeshan.munir\documents\visual studio 2017\projects\WebProject1\WebProject1.web\web.config
etc..

Vá exatamente onde o erro indica, garanta que essas pastas existam, garanta que a conta do trabalhador do IIS possa atravessá-las e lê-las e, se você perceber que algo está errado, talvez seja isso.

Entre. No VisualStudio, no ProjectProperties / Web, há um botão "Criar diretório virtual". Essencialmente, é exatamente isso que você faz, portanto, você pode tentar primeiro, mas o IIRC também pode às vezes limpar / substituir / trocar seções de configuração no arquivo applicationHost.config, portanto, tenha cuidado com esse botão se tiver alguma configuração personalizada.


3

No meu caso, havia algo errado com a instalação do .NET Core Windows Hosting Bundle.

Eu tinha instalado e reiniciado o IIS usando ("net stop was / y" e "net start w3svc") após a instalação, mas eu receberia o erro 500.19 com o código de erro 0x8007000d e a fonte de configuração -1: 0 :.

Consegui resolver o problema reparando a instalação do .NET Core Windows Hosting Bundle e reiniciando o IIS usando os comandos mencionados acima.

Espero que isso ajude alguém!


1
Isso funcionou para mim também, aqui está um blog do MSDN sobre a instalação do pacote do .NET Core Windows Server Hosting: blogs.msdn.microsoft.com/rohithrajan/2018/03/13/… Aqui está um link diretamente para o download: aka. ms / dotnetcore-2-windowshosting
riverswb

3

Este adorável erro detalhado ainda está presente em 2019! Eu só quero acrescentar que, se o seu web.configé válido e acessível, provavelmente é um problema de dependência .

Conforme mencionado pelo OP, era um AJAXmódulo, e como por outros comumente o Rewritemódulo. Apenas mantenha seus olhos abertos em seu web.config a quais módulos e bibliotecas suas tags estão se referindo, pois o código de erro 0x8007000d pode ser sobre QUALQUER dependência .

No meu caso, não percebi que o AspNetCorepacote estava ausente e precisava ser instalado! Tão feliz que encontrei este post !!


2

Isso pode ou não estar relacionado ... Comecei com o mesmo erro mencionado acima, comecei a pesquisar no Google, fazendo alterações, obtendo novos erros, loop infinito.

A alteração que me ocorreu com esse erro estava atrapalhando a Delegação de Recursos no Gerenciador do IIS na seção Gerenciamento do servidor. Sinto muito, mas não me lembro qual deles mudei, mas pesquisar no Google pode ajudar.

Isso levou o primeiro erro a entrar em um fluxo totalmente novo de outros, alguns totalmente sem sentido. (Eu receberia um erro ao executar em um diretório virtual, convertê-lo em um aplicativo produzia outro erro, etc, etc.). O que finalmente resolveu essa série de erros foi: Gerenciador do IIS, Pools de aplicativos, DefaultAppPool, Ativar aplicativos de 32 bits = True

Eu tinha iniciado esse aplicativo em uma caixa do windows xp de 32 bits e agora o estou executando em uma caixa do Windows 7 de 64 bits.

Então, espero que isso ajude outra pessoa.


2

Meu IIS 7.5 não entende a marca no web.config No VS 2010, também é sublinhada essa marca. Verifique seu arquivo de configuração com precisão para encontrar todas as tags sublinhadas. Coloquei no comentário e o erro desapareceu.


2

Comente as seguintes linhas no arquivo web.config.

<modules>
    <!--<add name="ScriptModule" preCondition="integratedMode" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</modules>

<handlers>
    <remove name="WebServiceHandlerFactory-ISAPI-2.0"/>
    <!--<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    <add name="ScriptResource" verb="GET" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>-->
</handlers>

Isso vai funcionar.


2

Eu tive o mesmo erro. Eu tinha um site IIS com o .net framework versão 2.0, mas meu aplicativo precisava da 4.0. Mudei a versão e funcionou.

Publicar apenas como lembrete se alguém tiver o mesmo problema.


2

Verifique se todos os seus recursos do IIS estão habilitados corretamente.

  • Abra os Recursos do Windows (ative ou desative os recursos do Windows).
  • Role para baixo até Internet Information Services

  • Abra a caixa suspensa da World Wide Web Plus

  • Abra a caixa suspensa Recursos de desenvolvimento de aplicativos mais
  • Marque manualmente todas as caixas de seleção subseqüentes e clique em ok

insira a descrição da imagem aqui


1
Acabei de reinstalar o Windows 10 com o método de atualização local e desmarquei algumas dessas caixas ou a reinstalação desmarcou-as. O código de erro associado 0x80070021 apareceu na página 500.19.
Andrew Morton

2

A configuração abaixo foi a causa do meu problema:

    <rewrite>
      <rules>
        <clear />
        <rule name="Redirect to HTTPS" stopProcessing="true">
          <match url="(.*)" />
          <conditions>
            <add input="{HTTP_HOST}" pattern="^.*spvitals\.com$" />
            <add input="{HTTPS}" pattern="off" ignoreCase="true" />
          </conditions>
          <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" redirectType="Permanent" appendQueryString="false" />
        </rule>
      </rules>
    </rewrite>

Nota: removi esta seção para testes locais, pois funciona bem no Azure.


1
Você pode manter as regras de reescrita no IIS se instalar o módulo de reconfiguração de URL do IIS. Está em iis.net/downloads/microsoft/url-rewrite
Toby Artisan

1

Eu tive o mesmo problema no Windows 7.

A solução foi acessar as configurações básicas> conectar-se como> usuário específico - e efetuar login como usuário, em vez do padrão "passagem"

Isso corrigiu o problema para mim.


1

Windows 7

Tente isso,

execute o cmd como administrador.

Desinstale todos os iis.

start /w pkgmgr.exe /uu:IIS-WebServerRole;WAS-WindowsActivationService

Reinstale o iis e normalmente é trabalho

Alain


1

Eu recebi esse erro colocando a <customErrors>tag dentro de em <system.webServer>vez de <system.web>onde ela pertence. Havia um pequeno rabisco sob a <customErrors>etiqueta, mas eu não percebi imediatamente.


1

Semelhante à resposta principal , estávamos recebendo essa exceção incrivelmente inútil por causa de um módulo CORS do IIS ausente. Foi exatamente o mesmo erro com o Código de erro (0x8007000d) e a Origem da configuração (-1: 0 :), mas a instalação do módulo de reconfiguração de URL não foi corrigida.

Recentemente, atualizamos o web.config para habilitar o CORS para alguns desenvolvedores que precisavam, mas não esperávamos que fosse necessário que todos os desenvolvedores instalassem o módulo IIS CORS. Infelizmente, parece que é necessário.

Para corrigi-lo, instale o módulo IIS CORS a partir daqui .


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.