# Teste de Ambiente em Produção IIS

## Visão Geral

Após a instalação, a validação é o passo que garante a estabilidade do ecossistema Suricato. Este procedimento certifica que a comunicação entre o Servidor Web (Apache/IIS) e o Banco de Dados está perfeita, prevenindo lentidões e quedas de acesso para o usuário final.

## Regras de Negócio

Antes de abrir o navegador, valide estes pontos críticos:

* [x] **Serviço:** O serviço `TelematicaSuricato` deve estar com status Em Execução.
* [x] **Conexão:** O nome da conexão deve ser, obrigatoriamente, `SURICATO`.
* [x] **Oracle:** Variável `ORACLE_HOME` removida e `TNS_ADMIN`  e `PATH` configurada.

## Acessando o ambiente

Para a criação de conexão ao banco de dados, entre no navegador e digite o endereço do IP do Servidor SURICATO.&#x20;

IP da maquina que utilizará o SURICATO: `https://IPdaMaquina/suricato/app/_lib/prod/`

**Exemplo:** `https://172.16.14.246/suricato/app/_lib/prod/index.php`

{% stepper %}
{% step %}

#### Valide o serviço

Abra os serviços do Windows, localize **TelematicaSuricato**, verifique se está **Em execução** e caso não esteja, inicie o serviço.

<figure><img src="/files/wEzfKqTLymDB6azEzd6f" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

#### Entre no sistema

* Caso não tenha sido criado o Banco de dados anteriormente, será exibida a página para criação de conexão ao banco de dados.
* Será exibida a tela de acesso ao ambiente de produção.
* Na tela de autenticação, escreva um email de recuperação, selecione o idioma (pt-br ou en-us) e insira a senha `Tsi123!!` para liberar as opções de configuração.

{% hint style="warning" %}
Sugerimos utilizar a senha padrão do sistema para facilitar manutenções futuras, mas na versão **3.1** o administrador tem liberdade para definir uma senha personalizada.
{% endhint %}

* No exemplo abaixo, será realizada a conexão com banco de dados ORACLE.

<figure><img src="/files/Bs8qe9VSICNqZmgUloZt" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

#### Configure a Conexão

Para conexão com o banco de dados, é obrigatório que o nome da conexão seja **SURICATO**. Então para conexã&#x6F;**.**

* Clique em **Editar conexão**
* Informe o nome:   `SURICATO`

<figure><img src="/files/IbeNTaPnZdLuyIbTZwtv" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

#### Selecione o banco

* Clique no ícone do banco (ex: Oracle)
* Confira os dados carregados

<figure><img src="/files/BA41JRXqvtIZ26Im1y1N" alt=""><figcaption></figcaption></figure>
{% endstep %}

{% step %}

#### Teste a conexão

* Clique em **Testar Conexão**

<figure><img src="/files/0jgzcghh54xO9IZQlUzi" alt=""><figcaption></figcaption></figure>

Resultado esperado:

* Conexão realizada com sucesso

<figure><img src="/files/0LnUF9c5OTjKgXqgZjvl" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}

## Possíveis erros que podem ocorrer

{% stepper %}
{% step %}

#### VARIÁVEL de AMBIENTE TNS\_ADMIN

Defina corretamente o diretório onde está o arquivo `tnsnames.ora`.

Exemplo:   `C:\app\Administrator\product\11.2.0\dbhome_1\NETWORK\ADMIN`

* Acesse as variáveis de ambiente do Windows
* Crie ou edite a variável **TNS\_ADMIN**
* Informe o caminho correto do diretório
  {% endstep %}

{% step %}

#### Configurações PATH do Windows para o ORACLE

Configure o PATH respeitando a ordem correta:

1. Oracle Client (32 bits)
2. Oracle Server (64 bits)

Exemplo:

```
C:\app\Administrator\client_1;
C:\app\Administrator\product\11.2.0\dbhome_1\bin;
```

1. Edite a variável PATH
2. Posicione o client antes do server

{% hint style="warning" %}
**Observação:** Garanta que o diretório contenha o arquivo **`oci.dll`**
{% endhint %}
{% endstep %}

{% step %}

#### Remover variável ORACLE\_HOME

Verifique se existe a variável:

```
ORACLE_HOME
```

Se existir, remova essa variável do ambiente, pois ela pode causar conflito na comunicação do PHP com o Oracle.
{% endstep %}

{% step %}

#### Reinicialização

Após qualquer alteração de variável de ambiente:

* Reinicie o servidor
* Aguarde a inicialização completa
* Execute o teste novamente
  {% endstep %}
  {% endstepper %}

## Validação do PHP (info.php)

Acesse:   `https://IPdoServidor/suricato/info.php`&#x20;

{% stepper %}
{% step %}

#### Confira os parâmetros do PHP

Na tela do `info.php`, verifique:

* Diretório do `php.ini` (PHPIniDir)
* Extensões carregadas
* Caminhos configurados
  {% endstep %}

{% step %}

#### Valide a configuração do httpd.conf

Acesse o arquivo:  `C:\Program Files\Telematica\SURICATO\apache\conf\httpd.conf`

Confirme se o diretório do PHP está configurado corretamente.
{% endstep %}

{% step %}

#### Valide a configuração do php.ini

Acesse o arquivo:

```
C:\Program Files\Telematica\SURICATO\apache\php\php.ini
```

1. Verifique o caminho das extensões
2. Confirme se o diretório está correto
3. Ajuste barras (`/` ou `\`) se necessário
   {% endstep %}

{% step %}

#### Valide as extensões do PHP

No arquivo `php.ini`:

* Localize as extensões
* Remova o `;` das extensões que devem ser ativadas

Exemplo:

```
;extension=oci8   → desabilitado
extension=oci8    → habilitado
```

{% endstep %}

{% step %}

#### Reinicie o serviço

Após alterações reinicie o serviço **Telematica Suricato,** valide novamente no `info.php` e confirme se a extensão foi carregada corretamente.
{% endstep %}
{% endstepper %}

## FAQ - Perguntas Frequentes

<details>

<summary>A conexão falhou, o que verificar?</summary>

Revise: TNS\_ADMIN, PATH, ORACLE\_HOME e serviço ativo

</details>

<details>

<summary>Como validar o PHP?</summary>

Acesse `info.php` e confira caminhos e extensões

</details>

<details>

<summary>Preciso reiniciar o servidor?</summary>

Sim, após alterar variáveis de ambiente

</details>

<details>

<summary>Posso usar outro nome de conexão?</summary>

Não. Use obrigatoriamente:  `SURICATO`

</details>

<details>

<summary>Como saber se uma extensão está ativa?</summary>

Se aparecer no `info.php`, ela está ativa

</details>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://software-telematica-com.gitbook.io/suricato-docs/central-tecnica/instalacao-e-configuracao-do-suricato/instalacao-do-suricato/configuracao-suricato-iis/teste-de-ambiente-em-producao-iis.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
