O que exatamente é o “Site Padrão”?

5

Entre o IIS 6 e o IIS 7.5 (e versões anteriores a 6 também, tenho certeza), há um site padrão em Sites. Eu nunca realmente questionei o que exatamente significa Website Padrão. Parece que a convenção aqui é colocar todos os seus sites em Default Website, então isso me deixa questionando o que é tão "padrão" quando você coloca seus outros sites abaixo dele. O propósito do site padrão é manter as configurações padrão que precisam ser herdadas por todos os sites abaixo ou há algo a mais? Em outras palavras, quando eu desejaria adicionar meu novo site à pasta Sites, em vez do site padrão.

FYI, estou migrando sites do IIS 6 para um novo servidor e usando o IIS 7.5 daqui para frente, portanto, essa questão se aplica principalmente ao IIS 7.5.

    
por oscilatingcretin 13.10.2014 / 15:31

3 respostas

12

O site padrão é o que o nome diz, um site de conveniência criado quando o IIS está instalado. Ele pode ser excluído e substituído por novos sites, mas sua vantagem é que ele funcionará "pronto para uso" com todas as definições e permissões já atendidas. Conseguir as permissões de pasta e arquivo corretas talvez seja a maior dor de cabeça quando criando um novo site.

Aqui está uma captura de tela dos atributos do website padrão:

Osatributosimportantesacimasão:

Pooldeaplicativos:cadapoolénadamaisqueumainstânciadew3wp.exe,umporpool(IISiniciarámaisdeumsobumacargapesada).EleéexecutadoaquisobacontadeusuáriochamadaDefaultAppPool,quejáfoidadaaspermissõesmínimasnecessáriasnaspastasdosite.

Caminhofísico:estaéapastaqueconterátodososarquivosdosite(excetoparaarquivosempastasvirtuais).OpadrãoéC:\inetpub\wwwroot.

Ligações:Oimportanteéhttp:*.80,significandooprotocoloHTTPnaporta80.Osoutrossãousados,porexemplo,paramanipularserviçosWCFedependemdoseuWindowsconfiguração.Éimportanteobservarqueaporta80nãopodeseratribuídaaoutrositecontantoquesejaatribuídoaeste.Asintaxecompletadeumaentradaéprotocol/IP_address:port:host_header,emqueitensnãoespecificadossãoconsiderados"todos", de modo que este padrão significa "todos os endereços IP e nomes de domínio e hosts".

Como isso funciona

O IIS escuta todas as portas especificadas para solicitações que empregam uma URL do formato geral:

protocol://[username:password@]domain[:port]/path/file[?parameters]

A solicitação é encaminhada para o (um) site que manipula a combinação especificada de protocolo, domínio e porta. Elementos não especificados têm seus padrões ou o navegador pode, em alguns casos, solicitar elementos ausentes, como nome de usuário e senha.

Um caminho, se especificado, é geralmente anexado ao Caminho Físico de uma maneira puramente textual. Por exemplo, o URL http://domain/path/file é traduzido para o site padrão codificar%. Se o nome do caminho começar com o nome de um diretório virtual que aponta para outro pasta, digamos C:\inetpub\wwwroot\path\file , a parte anterior do caminho da pasta é substituída, para que a especificação do arquivo se torne D:\myWWWroot .

Por que o site padrão existe

O motivo de sua existência é simplesmente porque há muitos detalhes tem que acertar ao criar no IIS um site a partir do zero.

Já toquei nas permissões de arquivo e pasta, que são a principal razão pela qual se pode obter o infame "HTTP Error 404.0 - Not Found" mensagem, quando se pode jurar que o arquivo especificado existe. Isso chega quando a conta de usuário para o pool de aplicativos está faltando permissões em alguma pasta no caminho físico gerado.

O site padrão assume e responde a todas as solicitações HTTP que chegam pela porta 80 para todos os endereços IP atribuídos ao computador em que está instalado, traduzindo todas as URLs HTTP para um caminho físico para um arquivo dentro de D:\myWWWroot\remainder-of-path\file .

É muito mais fácil começar com o site padrão, modificando seus atributos conforme necessário, em vez de criar tudo do zero, e especialmente se alguém tiver pouca experiência com o IIS 7+. O fato de que todas as contas de usuário necessárias e as permissões em C:\inetpub\wwwroot são pré-definidos podem evitar muita confusão na cabeça.

Isso também é importante para a segurança, porque por padrão o IIS é bastante invulnerável para hacking. Vulnerabilidades são criadas quando os padrões são modificados sem cuidado, ou quando produtos adicionais vulneráveis são adicionados.

    
por 17.10.2014 / 18:29
1

Web sites predefinidos:

  • Receber solicitações na porta 80
  • Cabeçalho de host específico não é necessário

Uma solicitação para link host: domain é recebida na porta 80 e enviada para o "Site padrão". Em seguida, é roteado para o aplicativo raiz e o diretório virtual raiz dentro dele, e o caminho físico do arquivo servido para essa solicitação torna-se c: inetpubmysitetesthello.aspx.

Site personalizado:

  • O site “MySite” também escuta na porta 80 de todas as interfaces
  • recebe apenas solicitações que especificam "mysite" no cabeçalho do host.

Uma solicitação para o link com o host: mysite é recebido na porta 80 e é despachado novamente para o “MySite”. Ele é roteado para o aplicativo raiz “/”, mas dentro desse aplicativo, ele é roteado para o diretório virtual “/ test”, porque o link parte do URL corresponde ao caminho do diretório virtual. Portanto, o caminho físico do arquivo exibido se torna c: inetpubtesthello.aspx.

Observação: o pool de aplicativos pode ser comum ao site padrão e a sites personalizados.

Espero que isso ajude!

    
por 15.10.2014 / 21:01
0

Houve realmente um pouco de mudança em torno deste tópico específico com o lançamento do IIS 7, que foi uma reformulação completa e reescrita do IIS. O site padrão é simplesmente o primeiro e mais comum "site" no seu servidor IIS. É verdade que você pode colocar sites abaixo do seu "Site Padrão", mas estes são realmente "aplicativos" aninhados. Os sites são mapeados para uma pasta específica e, geralmente, os aplicativos são mapeados para subpastas aninhadas específicas.

Há muito neste tópico que eu não posso fazer justiça também. Mas para responder a sua pergunta imediata, é realmente apenas um nome, "padrão" não exatamente vem todas as implicações que vêm à mente. Quanto ao motivo pelo qual você criaria vários sites versus a criação de aplicativos em seu site padrão, isso tem mais a ver com as ligações. O "Site Padrão" usa a porta http 80, por exemplo, na prática, você provavelmente não abrirá com frequência outra porta http para servir páginas da Web, de forma que seus outros sites provavelmente estarão aninhados sob o "Site Padrão". Pessoalmente, eu olho para o "Site Padrão" mais como o site raiz.

Existe um artigo muito útil sobre este tópico no iis.net que você pode não ter visto , embora seja, como sempre, vago sobre o" Site Padrão "especificamente em pergunta.

    
por 15.10.2014 / 20:36