IIS 7.5: dirs virtuais com diferentes documentos padrão

1

Temos uma configuração típica no IIS para o nosso webapp com diretórios virtuais para projetos diferentes:

  • www.webapp.com (site)
    • project1 (dir virtual)
    • project2 (dir virtual)
    • project3 (dir virtual)

O webapp possui login.aspx como documento padrão, assim como todos os diretórios virtuais. Agora, eu preciso de um documento padrão diferente (index.aspx) somente para o site www.webapp.com . Os dirs virtuais continuarão usando login.aspx e somente isso.

EDIT: Todos os dirs virtuais apontam para o mesmo diretório físico. Se eu alterar o documento padrão para www.webapp.com, ele também será alterado para todos os diretórios virtuais subjacentes.

Isso costumava ser fácil no IIS 6, mas no IIS 7.5 não consegui implementar isso.

Acho que preciso alterar applicationhost.config adicionando tags de local, mas não tenho ideia de como começar. Alguém pode me apontar na direção certa?

Obrigado! Stijn

    
por Stijn Van Loo 04.02.2011 / 09:40

4 respostas

1

Para fazer isso, você precisa modificar o arquivo ApplicationHost.config. A localização do arquivo está atualmente no diretório% windir% \ system32 \ inetsrv \ config.

A seção Localização no final do documento precisa ser modificada de acordo, dependendo dos documentos padrão do aplicativo. por exemplo -

<location path="Default Web Site/App">
    <system.webServer>
        <defaultDocument enabled="true">
            <files>
                <clear />
                <add value="Login.aspx" />
            </files>
        </defaultDocument>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</location>


<location path="Default Web Site/App/VApp2">
    <system.webServer>
        <defaultDocument enabled="true">
            <files>
                <clear />
                <add value="LoginPage2.aspx" />
            </files>
        </defaultDocument>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</location>
    
por 30.09.2011 / 20:57
0

Talvez eu não tenha entendido seu problema, mas parece trivial para mim.

Abra o Gerenciador dos Serviços de Informações da Internet, selecione o diretório virtual (clique duas vezes). Na seção IIS, abra "Default Document" e defina seu documento padrão (ou remova alguns).

Repita o procedimento para todos os seus diretórios virtuais.

ATUALIZAÇÃO:

Pergunta: Alguns diretórios virtuais apontam para o mesmo diretório físico? O IIS salva as informações nos arquivos web.config no diretório físico. Talvez esse seja seu problema.

Solução: crie alguma lógica que redirecione as solicitações dos diretórios virtuais. Ou crie uma cópia do seu diretório físico para que os arquivos web.config possam ser definidos individualmente.

    
por 04.02.2011 / 18:52
0

Sim, a maneira mais fácil de configurar isso é:

Abra a Delegação de Recurso e desative a delegação do módulo Documento Padrão (ou torne-o somente leitura) para o site.

Feito isso, a GUI criará <location> tags para você em qualquer nível menor que a configuração de delegação que você acabou de configurar.

    
por 10.06.2011 / 10:50
0

1) Vá para - > IIS - > diretório virtual (clique duplo) - > clique em Documento padrão - > clique no botão adicionar - > Digite seu html, aspx, etc. Para (exemplo index.html, k.html)

2) Vá para o diretório físico - > abra seu arquivo web.config com (notepad ++)

3) delete todas as linhas

4) adicione estas linhas

    <?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <location path="XX">
       <system.webServer>
       <defaultDocument enabled="false">
         <files>
            <clear />
              <add value="XXX.html" />
         </files>
        </defaultDocument>
    </system.webServer>
    </location>
    </configuration>

5) Edite algumas alterações

<location path="XX">

XX - > seu nome de diretório virtual

 <add value="XXX.html" />

XXX.html - > o nome da sua página com extensão

    
por 17.10.2018 / 07:54