Testando com uma Aplicação ISAPI

Na seção anterior configuramos um servidor WebSockets dedicado executando nas portas HTTP padrão. Agora podemos testar nosso servidor dedicado com uma aplicação ISAPI. Como mencionado antes, há vários benefícios em usar um servidor WebSockets dedicado. Um benefício importante é que você pode compartilhá-lo entre várias aplicações e também garantir que tudo seja servido através das portas HTTP padrão, eliminando a necessidade de expor portas adicionais para a web pública.

Usaremos o mesmo projeto Basic Chat para esse fim. Esse projeto já é um projeto combo e pode ser facilmente convertido para uma DLL ISAPI com uma pequena modificação no arquivo do projeto.

Define original no arquivo do projeto:

{$define UNIGUI_VCL}// Comente esta linha para transformar este projeto em um módulo ISAPI

Transforme essa linha em um comentário para converter o projeto em uma DLL ISAPI:

{.$define UNIGUI_VCL}// Comente esta linha para transformar este projeto em um módulo ISAPI

Após fazer essa alteração, feche e reabra o projeto. Compilar o projeto criará um arquivo chamado wsbasicchat.dll na pasta de saída.

Já fizemos todas as configurações necessárias na seção anterior, então nada mais precisa ser feito a esse respeito.

clip0330
1

Converter e compilar o projeto

  • Comente a {$define UNIGUI_VCL} linha conforme mostrado acima.

  • Feche e reabra o projeto.

  • Compile o projeto. A saída incluirá wsbasicchat.dll.

2

Implantar a DLL ISAPI no IIS

  • Implante o gerado wsbasicchat.dll no Microsoft IIS. (Veja Módulo ISAPI para detalhes de implantação.)

  • Observação: o procedimento de implantação é o mesmo de sempre, com uma exceção importante relativa às vinculações de IP descrita a seguir.

3

Configurar vinculações do site para evitar conflitos

No sistema de teste do exemplo o servidor WebSockets dedicado e o IIS estão atribuídos a IPs diferentes:

  • 192.168.1.5 — servidor WebSockets dedicado

  • 192.168.1.4 — IIS

Ao configurar seu site no IIS, vincule explicitamente o site ao IP do IIS (192.168.1.4 neste exemplo). Isso garante que não haja conflito entre a aplicação web do IIS e o servidor WebSockets dedicado.

Para fazer isso: escolha Edit Site > Bindings e vincule seu site ao IP do IIS.

clip0299

Repita isso se seu site também precisar de uma conexão segura, ou adicione apenas uma vinculação segura se sua aplicação exigir conexões seguras.

clip0300

Após fazer os ajustes acima suas Site Bindings devem ficar semelhantes a esta imagem. (Em uma configuração do mundo real você também precisa especificar um Host Name.)

clip0301
4

Acesse a aplicação de chat implantada

Com as configurações acima, a aplicação de chat deverá estar disponível em:

http://192.168.1.4/chat/wsbasicchat.dll

clip0302