Sessão do ASP <sessão>
Visão geral
O elemento <session>
do elemento <asp>
especifica as configurações de estado de sessão do ASP (Active Server Pages). O estado da sessão é um meio pelo qual o IIS (Serviços de Informações da Internet) 7 armazena informações sobre cada sessão de cliente exclusiva. Por exemplo, se o site tiver um aplicativo de carrinho de compras, o conteúdo do carrinho de compras de cada cliente poderá ser armazenado no estado de sessão.
Você deve ter recursos de memória no servidor para preservar o estado de sessão ASP e a quantidade de memória necessária varia dependendo da quantidade de informações que você está armazenando em cada sessão. Para ajudar a regular os recursos que o IIS 7 usará, você pode especificar as configurações para o estado de sessão. Por exemplo, o atributo max especifica o número máximo de sessões a serem armazenadas e o atributo timeout especifica a duração de cada sessão ASP.
Se seus aplicativos não exigirem estado de sessão, a definição do atributo allowSessionState como false desabilitará o estado da sessão ASP.
Compatibilidade
Versão | Observações |
---|---|
IIS 10.0 | O elemento <session> não foi modificado no IIS 10.0. |
IIS 8.5 | O elemento <session> não foi modificado no IIS 8.5. |
IIS 8.0 | O elemento <session> não foi modificado no IIS 8.0. |
IIS 7.5 | O elemento <session> não foi modificado no IIS 7.5. |
IIS 7.0 | O elemento <session> do elemento <asp> foi introduzido no IIS 7.0. |
IIS 6,0 | O elemento <session> substitui as seguintes propriedades de metabase do IIS 6.0:
|
Instalação
Para dar suporte e configurar aplicativos ASP em seu servidor Web, instale o módulo ASP. Execute as etapas a seguir para instalar o módulo ASP.
Windows Server 2012 R2 ou Windows Server 2012
- Na barra de tarefas, clique em Gerenciador do Servidor.
- No Gerenciador do Servidor, clique no menu Gerenciar e clique em Adicionar Funções e Recursos.
- No assistente Adicionar Funções e Recursos, clique em Avançar. Selecione o tipo de instalação e clique em Avançar. Selecione o servidor de destino e clique em Avançar.
- Na página Funções de Servidor, expanda Servidor Web (IIS), Servidor Web, Desenvolvimento do Aplicativo e selecionar ASP.
- Se a caixa de diálogo Adicionar recursos exigidos pelo ASP? for exibida, clique em Adicionar recursos. (Esta página só será exibida se você ainda não tiver instalado o serviço de função Extensões ISAPI no seu servidor.)
- Na página Funções do Servidor, clique em Avançar.
- Na página Selecionar recursos, clique em Avançar.
- Na página Confirmar seleções de instalação, clique em Instalar.
- Na página Resultados , clique em Fechar.
Windows 8 ou Windows 8.1
Na tela Iniciar, mova o ponteiro até o canto inferior esquerdo, clique com o botão direito do mouse no botão Iniciar e clique em Painel de Controle.
Em Painel de Controle, clique em Programas e Recursos e clique em Ativar ou desativar recursos do Windows.
Expanda Serviços de Informações da Internet, Serviços da World Wide Web, Recursos de Desenvolvimento de Aplicativos e selecione ASP.
Observação
A função Extensões ISAPI será selecionada se ainda não tiver sido instalada.
Clique em OK.
Clique em Fechar.
Windows Server 2008 R2 ou Windows Server 2008
- Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador do Servidor.
- No painel de hierarquia do Gerenciador do Servidor, expanda Funções e clique em Servidor Web (IIS).
- No painel Servidor Web (IIS), role até a seção Serviços de Função e clique em Adicionar Serviços de Função.
- Na página Selecionar Serviços de Função do Assistente para Adicionar Serviços de Função, selecione ASP.
- Se a caixa de diálogo Adicionar serviços de função exigidos pelo ASP for exibida, clique em Adicionar Serviços de Função Necessários. (Esta página só será exibida se você ainda não tiver instalado o serviço de função Extensões ISAPI no seu servidor.)
- Na página Selecionar Serviços de Função, clique em Avançar.
- Na página Confirmar Seleções de Instalação, clique em Instalar.
- Na página Resultados , clique em Fechar.
Windows Vista ou Windows 7
- Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.
- Em Painel de Controle, clique em Programas e Recursos e clique em Ativar ou desativar Recursos do Windows.
- Expanda Serviços de Informações da Internet, em seguida, World Wide Web Services e Recursos de Desenvolvimento de Aplicativos.
- Selecione ASP e clique em OK.
Instruções
Como definir as configurações de estado de sessão do ASP para um site ou aplicativo
Abra o Gerenciador dos Serviços de Informações da Internet (IIS):
Caso você esteja usando o Windows Server 2012 ou o Windows Server 2012 R2:
- Na barra de tarefas, clique em Gerenciador do Servidor, em Ferramentas e em Gerenciador dos Serviços de Informações da Internet (IIS).
Se você estiver usando o Windows 8 ou Windows 8.1:
- Mantenha pressionada a tecla Windows, pressione a letra X e clique em Painel de Controle.
- Clique em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
Caso você esteja usando o Windows Server 2008 ou o Windows Server 2008 R2:
- Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador dos Serviços de Informações da Internet (IIS).
Se você estiver usando o Windows Vista ou Windows 7:
- Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.
- Clique duas vezes em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
No painel Conexões, expanda o nome do servidor, expanda Sites e navegue até o site ou aplicativo Web que você deseja configurar.
No painel Página Inicial do site ou aplicativo, clique duas vezes em ASP.
No painel ASP, expanda a seção Propriedades da Sessão e defina as configurações desejadas.
Clique em Aplicar no painel Ações.
Configuração
Atributos
Atributo | Descrição |
---|---|
allowSessionState |
Atributo booliano opcional. Especifica se a persistência do estado de sessão para um aplicativo ASP está habilitada. O valor padrão é true . |
keepSessionIdSecure |
Atributo booliano opcional. Especifica se uma ID de sessão é enviada como um cookie seguro se atribuída por um canal de sessão seguro. O valor padrão é true . |
max |
Atributo uint opcional. Especifica o número máximo de sessões simultâneas. O valor padrão é 4294967295 . |
timeout |
Atributo timeSpan opcional. Especifica o período de tempo máximo (hh:mm:ss) que um objeto de sessão é mantido depois que a última solicitação associada ao objeto é feita. O valor padrão é 00:20:00 . |
Elementos filho
Nenhum.
Exemplo de configuração
O exemplo de configuração a seguir habilita o estado de sessão ASP, define o número máximo de sessões ASP como 1000 e define o tempo limite da sessão como 10 minutos para o Site Padrão.
<location path="Default Web Site">
<system.webServer>
<asp>
<session allowSessionState="true" max="1000" timeout="00:10:00" />
</asp>
</system.webServer>
</location>
Exemplo de código
Os exemplos de código a seguir habilitam o estado de sessão ASP, definem o número máximo de sessões ASP como 1000 e definem o tempo limite da sessão como 10 minutos para o Site Padrão.
AppCmd.exe
appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.allowSessionState:"True" /commit:apphost
appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.max:"1000" /commit:apphost
appcmd.exe set config "Default Web Site" -section:system.webServer/asp /session.timeout:"00:10:00" /commit:apphost
Observação
Defina o parâmetro commit para apphost
quando usar AppCmd.exe para definir essas configurações. Isso confirma as definições de configuração para a seção de local apropriado no arquivo ApplicationHost.config.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection aspSection = config.GetSection("system.webServer/asp", "Default Web Site");
ConfigurationElement sessionElement = aspSection.GetChildElement("session");
sessionElement["allowSessionState"] = true;
sessionElement["max"] = 1000;
sessionElement["timeout"] = TimeSpan.Parse("00:10:00");
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim aspSection As ConfigurationSection = config.GetSection("system.webServer/asp", "Default Web Site")
Dim sessionElement As ConfigurationElement = aspSection.GetChildElement("session")
sessionElement("allowSessionState") = True
sessionElement("max") = 1000
sessionElement("timeout") = TimeSpan.Parse("00:10:00")
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Default Web Site");
var sessionElement = aspSection.ChildElements.Item("session");
sessionElement.Properties.Item("allowSessionState").Value = true;
sessionElement.Properties.Item("max").Value = 1000;
sessionElement.Properties.Item("timeout").Value = "00:10:00";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set aspSection = adminManager.GetAdminSection("system.webServer/asp", "MACHINE/WEBROOT/APPHOST/Default Web Site")
Set sessionElement = aspSection.ChildElements.Item("session")
sessionElement.Properties.Item("allowSessionState").Value = True
sessionElement.Properties.Item("max").Value = 1000
sessionElement.Properties.Item("timeout").Value = "00:10:00"
adminManager.CommitChanges()