Websites são o tipo mais comum de conteúdo na internet hoje em dia. Mas para garantir que seu site seja visível para o maior público possível, você precisará hospedá-lo em um servidor web. Como fazer isso? Considere recorrer aos Serviços de Informações da Internet do Windows (Windows IIS), uma escolha popular para hospedagem na web.
Neste tutorial, você aprenderá o básico para começar com o Windows IIS para gerenciamento de aplicativos da web via interface gráfica do usuário ou ambiente de linha de comando!
Continue lendo e melhore o gerenciamento de suas aplicações web com o Windows IIS!
Pré-requisitos
Este tutorial será uma demonstração prática. Se você deseja acompanhar, certifique-se de ter:
- A Windows machine – This tutorial uses Windows Server 2012 since it’s stable and available at a low cost (or free). But you can also use Windows 10 for this tutorial.
- Distribuição do Visual C++ instalada em sua máquina Windows. O IIS requer Visual C++ para renderizar corretamente as páginas PHP.
Instalando o Windows IIS em um Servidor Windows
O Servidor Web IIS oferece funcionalidade rica e escalabilidade para hospedar sites e serviços em sistemas operacionais Windows. Mas antes de usar o IIS, você deve primeiro instalar essa ferramenta em sua máquina Windows.
Para instalar o Windows IIS em um Servidor Windows:
1. Pressione Ctrl+R para abrir a caixa Executar. Digite ServerManager e pressione Enter.
Esta ação abre o Painel do Gerenciador do Servidor. O administrador de TI usa este painel de interface gráfica para várias tarefas do dia a dia relacionadas à administração do servidor.

2. No Gerenciador do Servidor, clique no link Adicionar Funções e Recursos para abrir um assistente, onde você pode adicionar serviços de função e recursos ao seu servidor local.

3. Em seguida, leia as informações na página Antes de começar e clique em Avançar.
Você também pode marcar a opção Pular esta página por padrão para que você não veja esta página novamente na próxima vez que adicionar funções e recursos.

4. Agora, na página Tipo de instalação, selecione a primeira opção (Instalação baseada em função ou recurso) e clique em Avançar.
Esta opção é recomendada na maioria dos casos, o que o guiará na adição de funções específicas, serviços de função e recursos de forma padrão.
Se você escolher a segunda opção (Instalação dos Serviços de Área de Trabalho Remota), você terá que selecionar manualmente as funções, serviços e recursos necessários para a instalação.

5. Selecione seu servidor no pool de servidores e clique em Avançar.
Você também pode selecionar vários servidores para uma instalação distribuída, mas isso está fora do escopo deste tutorial.

6. Em seguida, marque a caixa de seleção Servidor Web (IIS) na página de Funções do Servidor para uma infraestrutura de aplicativo Web escalável e clique em Avançar.

7. Deixe as seleções padrão selecionadas e clique em Avançar. Esta ação informa ao Windows para instalar todos os sub-recursos necessários para a função de servidor IIS, incluindo ASP.NET, Conteúdo Estático e Documento Padrão.

8. Revise mais informações sobre a Função do Servidor Web (IIS) e clique em Avançar.

9. Na página de Serviços de Função, deixe as seleções padrão, mas expanda o nó Desenvolvimento de Aplicativos, selecione a caixa de seleção CGI e clique em Avançar.
Esta opção instala suporte para a Interface Comum de Gateway (CGI), uma maneira padrão de interagir com aplicativos externos nos servidores web.

10. Após configurar as configurações de instalação, clique no botão Instalar para instalar as funções e recursos selecionados.

11. Uma vez que a instalação estiver concluída, conforme mostrado abaixo, clique em Fechar para finalizar e sair do assistente.
E pronto! Você instalou com sucesso o Windows IIS no seu servidor.

12. Por fim, abra o seu navegador da web favorito e acesse http://localhost/.
Se tudo correr bem, você verá a página padrão do IIS, como a mostrada abaixo, confirmando que seu servidor web está funcionando.

Instalando o PHP e Configurando o IIS para Lidar com Solicitações PHP
Você instalou com sucesso o Windows IIS no seu servidor, mas ainda precisa de uma maneira de implantar páginas no seu servidor. E para este tutorial, você instalará o PHP e configurará o IIS para lidar com solicitações PHP.
Para instalar o PHP no seu servidor:
1. Acesse a página de download da versão do PHP aqui. No momento desta redação, a versão estável mais recente é o PHP 8.1.
Faça o download do pacote ZIP Não Thread Safe (NTS), pois o IIS usa uma única thread para lidar com cada solicitação. O pacote Thread Safe (TS) é para IIS FastCGI, que permite que o PHP seja executado em um ambiente multithread.

2. Descompacte o arquivo PHP baixado no diretório PHP (C:\PHP\) no seu servidor.
Após descompactar o arquivo, você terá que instalar e configurar o IIS para poder gerenciar e implantar aplicativos da web.

3. Abra o Gerenciador do Servidor, selecione Painel → Ferramentas → Gerenciador de Serviços de Informações da Internet (IIS). Esta ação abre o console do Gerenciador do IIS, onde você pode configurar as configurações do IIS, criar e gerenciar sites e implantar aplicativos da web.

4. Agora, selecione seu localhost (painel Conexões) e clique duas vezes em Mapeamentos de Manipulador para acessar a lista de mapeamentos de manipulador disponíveis.

5. Na página Mapeamentos de Manipulador, clique em Adicionar Mapeamento de Módulo (painel direito), o que abre a caixa de diálogo Adicionar Mapeamento de Módulo.

6. Em seguida, configure o novo mapeamento com o seguinte:
- Caminho da solicitação – Digite *.php para informar ao IIS para encaminhar todas as solicitações que terminam com .php para o módulo do processador PHP. O símbolo de asterisco (*) permite economizar tempo, pois você não precisa adicionar um mapeamento de manipulador para cada arquivo PHP.
- Módulo – Escolha FastCgiModule para especificar que o módulo FastCGI deve lidar com as solicitações.
- Executável – Insira o caminho completo para o arquivo php-cgi.exe. Neste exemplo, o caminho é C:\PHP\php-cgi.exe.
- Nome – Forneça um nome de mapeamento de módulo exclusivo, mas este tutorial usa PHP_FastCGI.
- Clique em Restrições de Solicitação para configurar as restrições de solicitação.

7. Marque a caixa de seleção e escolha a opção Arquivo ou Pasta. Esta opção garante que o mapeamento de manipulador se aplique apenas a arquivos no servidor.

8. Navegue até a guia Verbos e escolha a opção Todos os verbos. Essa opção informa ao IIS para encaminhar todos os tipos de solicitações HTTP, como GET, POST e HEAD, para o módulo de processamento PHP.

9. Agora, na guia Acesso, escolha a opção Script e clique em OK. Essa opção informa ao IIS que as páginas PHP são scripts a serem executados, em vez de arquivos estáticos a serem servidos diretamente.

10. Volte para Adicionar Mapeamento de Módulo, clique em OK para adicionar o novo mapeamento de módulo.

11. Por fim, abra o PowerShell como administrador e execute o comando IISRESET para reiniciar o Windows IIS. Essa ação é necessária para que o novo mapeamento de manipulador entre em vigor.

Implantando seu primeiro site
Agora que o PHP está instalado e o IIS está configurado, a parte mais empolgante vem a seguir: implantar seu site. Mas primeiro, você precisa de um site para implantar. Você criará e implantará uma página PHP básica em seu servidor IIS neste exemplo.
1. Crie um novo arquivo index.php em seu editor de texto favorito no diretório raiz do site. Neste exemplo, o diretório raiz do site é C:\inetpub\wwwroot\.
A extensão .php indica ao IIS que o arquivo index.php é uma página PHP a ser processada pelo módulo de processamento PHP.
2. Em seguida, adicione o seguinte código ao seu novo arquivo index.php, salve as alterações e feche o arquivo.
O código abaixo instrui o IIS a exibir uma mensagem simples de “Olá, Mundo!” em uma página PHP no seu navegador.
3. Por fim, abra uma nova aba no seu navegador da web e acesse http://localhost/index.php para solicitar a sua página index.php do servidor local do IIS. Fazendo isso, você poderá testar se a implantação do seu site está funcionando.
Se tudo correr bem, você verá a mensagem “Olá, mundo!” na página index.php, conforme mostrado abaixo.

Gerenciando o Windows IIS via Ambiente de Linha de Comando
Grande fã do uso da CLI? Sem problemas! Além da interface gráfica, o IIS também pode ser gerenciado usando o prompt de comando. Com esta ferramenta, é possível gerenciar quase todos os aspectos do IIS, incluindo sites, aplicativos, diretórios virtuais, pools de aplicativos, etc.
Neste tutorial, você verá alguns dos comandos básicos para gerenciar o IIS. Mas para uma lista completa de todos os comandos disponíveis no AppCmd.exe, confira a documentação oficial da Microsoft.
1. Abra o prompt de comando como administrador e execute os comandos abaixo para listar todos os sites disponíveis em seu servidor IIS.
Você verá uma lista de todos os sites atualmente em execução em seu servidor e algumas informações básicas sobre cada site, como ID, estado, etc.
Muito genérico? Sem problemas! Você também pode usar o AppCmd.exe para consultar sobre um site específico no próximo passo para aprofundar nas informações que você está interessado.

2. Execute o comando abaixo para obter todas as informações sobre o Default Web Site.

3. Em seguida, execute os seguintes comandos para parar um site específico e listar todos os sites parados (/state:Stopped).
Você pode substituir o estado parado por outros estados de site, como começando, em execução ou desconhecido.

4. Agora, execute o comando abaixo, combinando múltiplos critérios separados por um espaço, para filtrar ainda mais os resultados.
O comando abaixo lista todos os sites que estão em estado parado (/state:Stopped) e têm a inicialização automática no nível do servidor habilitada (/serverAutoStart:true).
5. Por fim, execute o comando abaixo para iniciar o site que você parou no terceiro passo (“Default Web Site”).

Conclusão
Você viu como o Windows IIS permite que você gerencie seus sites. E neste tutorial, você aprendeu a instalar e configurar o IIS em um servidor Windows para implantar e testar um site PHP básico. O Windows IIS é uma ferramenta versátil que permite gerenciar seus sites via interface gráfica e ambiente de linha de comando.
Com esse novo conhecimento, você está pronto para começar a construir seus sites e aplicativos no IIS! Por que não aprender como criar um site WordPress no IIS em seguida?