Scott Guthrie anunciou recententemento o IIS Express, uma alternativa mais leve do que o IIS e um forte candidato a substituir o Cassini ( servidor que está junto como Visual Studio). O IIS Express possui a intenção de solucionar problemas que aconteciam com o Cassini e oferecer aos desenvolvedores todas as funcionalidades do IIS 7.x. Ele ainda não está disponível para download mas, de acordo com Scott, deve ficar disponível em breve.
O IIS Express funciona da mesma forma que o Cassini sendo iniciado ao realizar o debug ou executar a aplicação. Ele oferece suporte ao Windows XP ou outras versões mais recentes, não é necessário possuir uma conta de administrador, suporta o ASP clássico, PHP, SSL, reescrita de URL, Media de vários tipos e extensões. Para o suporte ao SSL um certificado "auto-assinado" é instalado automaticamente ao iniciar o servidor.
A versão express será suportada pelo Visal Studio 2010 e Visual Web Developer 2010 Express porém é preciso instalar um patch para o Visual Studio 2010. Nas próximas versões do VS ele já será incluído. Ele pode, entretanto, ser executado via linha de comando o que possibilita que versões mais antigas do Visual Studio consigam utilizá-lo:
Você poderá utilizar ele com o VS 2008 basta executar o mesmo por linha de comando. Nós não oferecemos nenhuma ferramenta que integre ele com a IDE exceto com o VS 2010.
Scott responde a um dos seus leitores com um exemplo completo da utilização via linha de comando:
Uso:
iisexpress [/config:config-file] [/site:site-name] [/systray:boolean]
iisexpress /path:app-path [/port:port-number] [/clr:clr-version] [/systray:boolean]
/config:config-file
O caminho inteiro para o arquivo applicationhost.config. O valor padrão é IISExpress8\config\applicationhost.config que está localizado na pasta Documentos do usuário.
/site:site-name
O nome do site, como descrito no arquivo applicationhost.config.
/path:app-path
O caminho físico completo para a aplicação. Você não pode combinar essa opção com /config ou opções relacionadas.
/port:port-number
A porta que sua aplicação será associada. Por padrão o valor é 8080. Você também deve especificar o /path.
/clr:clr-version
A versão do .NET Framework (e.g. v2.0) que sua aplicação irá utilizar. Por padrão o valor é v4.0. Você também deve especificar o /path.
/systray:boolean
Habilita ou desabilita o monitoramento da aplicação. O valor padrão é true.
Exemplos:
iisexpress /site:WebSite1
Esse comando sobe o site WebSite1 do arquivo de configuração do usuário.
iisexpress /config:c:\myconfig\applicationhost.config
Esse comando sobe o site através do arquivo de configuração especificado.
iisexpress /path:c:\myapp\ /port:80
Esse comando sobe o site que está na pasta c:\myapp na porta 80.
Em resposta a um de seus leitores Scott disse que o IIS Express poderá ser modificado para aceitar requisições remotas diferente do Cassini que possuía a limitação de ser acessível apenas para o localhost. Outro leitor questionou sobre o limite de conexões e redistribuição:
... você pode redistribuir o ISS Express em suas aplicações. Não há limite de conexões.
Questionado sobre a integração com o Azure, SharePoint e suporte ao Edit e ao Continue, Scott respondeu:
Nós ainda não oferecer integração Azure/IIS Express. Isso é algo que nós estamos planejando para o futuro.
...infelizmente nós não suportamos o SharePoint com o IIS Express. Você precisa utilizar o IIS completo para isso.
...edit e Continue não são suportados ainda - mas é algo que estamos pensando.
Ele também oferece algumas informações sobre as diferenças entre o IIS e o IIS Express:
O código do core é igual para os dois. A maior diferença é que o IIS Express executa seu worker de uma linha de comando ou do VS (ou outro ferramenta). A versão completa do IIS possui um modelo on-demand para iniciar o seu worker e a ativação do sistema e pode subir ou derrubar um processo do worker pela demanda.
Scott também mencionou que o IIS Express é um dos vários componentes que eles irão lançar em breve e ele irá anúnciar diversos outros que estão para ser lançados.