# Servidor web Nginx

Nginx é o servidor web usado pela plataforma Navixy para executar o site. É um software gratuito projetado para rodar no Linux e também é compatível com Windows.

<div align="center"><img src="/files/82b614f0b651d2500af0dc8f5aa2ff05ed1408c7" alt="Logotipo do Nginx"></div>

O Nginx é usado tanto para a solução Navixy On-premise quanto para os servidores Navixy PaaS. É o único tipo de servidor web que tem garantia de compatibilidade com a plataforma. Outros servidores web (Apache, IIS, etc.) não são suportados.

{% hint style="info" %}
Se você tiver outras aplicações web instaladas no seu servidor juntamente com o Navixy On-premise, pode utilizar softwares de servidor web diferentes em simultâneo com o Nginx para esses produtos. Nessa situação, é crucial realizar a separação de portas desses servidores web para evitar conflitos de porta nos mesmos números de porta.
{% endhint %}

## Configurações do Nginx

Usar um servidor web significa configurá‑lo para que seu site funcione conforme o esperado. A configuração especifica coisas importantes como:

* Domínio(s) do seu site
* Protocolo (HTTP/HTTPS)
* Certificados SSL
* A localização do conteúdo do site

E outros parâmetros necessários para o funcionamento adequado da página web.

### Configurações no Linux

A versão atual da plataforma Navixy On-premise é instalada no Linux automaticamente, seja usando scripts de instalação automática ou implantando contêineres docker. Em ambos os casos, a configuração do Nginx é feita automaticamente durante a instalação e você não precisa fazer nenhuma alteração, estando ela totalmente preparada para uso posterior.

Se sua instância foi implantada em modo manual no passado, as configurações realizadas anteriormente permanecem totalmente funcionais e não precisam ser modificadas, a menos que você vá aplicar mudanças fundamentais no site (por exemplo, alterar o domínio ou ativar/desativar SSL). Se alguma modificação for necessária, por favor entre em contato com [suporte técnico Navixy](mailto:support@navixy.com) para instruções adicionais.

### Configurações no Windows

No caso do Windows, toda a instalação e configuração da plataforma Navixy On-premise é feita manualmente e não há automação. Portanto, o Nginx também deve ser configurado manualmente.

Para facilitar o processo de configuração, são fornecidos modelos de configuração, que podem ser usados simplesmente substituindo variáveis pelos valores reais do domínio e dos nomes dos certificados SSL.

Os modelos estão localizados em `\windows\nginx` pasta de `navixy-package` (build de distribuição descompactado da plataforma Navixy On-premise). Os arquivos são:

* `navixy.conf` - arquivo de configuração para o site da plataforma aberto em HTTP, sem proteção SSL.
* `navixy_ssl.conf` - arquivo de configuração para site protegido por SSL.

Escolha o arquivo de acordo com a forma como pretende configurar o site.

{% hint style="info" %}
Os valores das variáveis são especificados com um cifrão e entre chaves - esses caracteres identificam a variável. Por exemplo:\
`${service_domain}`\
Ao substituir a variável pelo valor real, esses caracteres devem ser removidos. Por exemplo:\
`${service_domain}` torna‑se `meu.dominio.com`
{% endhint %}

#### HTTP, sem proteção SSL

Esta é a opção mais simples para configurar o site da plataforma Navixy; você só precisa de um domínio(s) registrado apontando para seu servidor.

Edite o arquivo `navixy.conf` localizado em `C:\nginx\conf\conf.d`. Substitua os seguintes valores:

* `${service_domain}` - domínio da interface do usuário em instalação de três domínios ou o domínio principal da sua plataforma em uma instalação de domínio único.
* `${api_domain}` - o domínio da API na instalação de três domínios. Para uma instalação de domínio único, exclua a variável, mas preserve o restante da linha.
* `${panel_domain}` - o domínio do painel administrativo na instalação de três domínios. Para uma instalação de domínio único, exclua a variável, mas preserve o restante da linha.

Salve o arquivo e reinicie o Nginx. Seu site Navixy deverá estar disponível nos domínios especificados.

No caso de instalação em um único domínio, o painel administrativo estará disponível em `/panel` caminho (por exemplo `http://meu.dominio.com/panel`), e a API estará disponível em `/api` caminho (por exemplo `http://meu.dominio.com/api`).

#### HTTPS, protegido por SSL

Para configurar um site protegido por SSL, você precisa não apenas de um domínio registrado, mas também de um certificado SSL válido e sua chave privada.

{% hint style="info" %}
Para mais informações sobre certificados SSL, por favor consulte [a página correspondente](/docs/on-premise/pt-br/on-premise/how-to-guide/configuration/ssl-certificates/ssl-certificates-installation.md) das instruções.
{% endhint %}

Coloque o(s) certificado(s) SSL e a(s) chave(s) privada(s) em `C:\nginx\ssl` pasta. Crie‑a se ela não existir.

Edite o arquivo `navixy_ssl.conf` localizado em `C:\nginx\conf\conf.d`. Substitua os seguintes valores:

* `${service_domain}` - domínio da interface do usuário em instalação de três domínios ou o domínio principal da sua plataforma em uma instalação de domínio único.
* `${api_domain}` - o domínio da API na instalação de três domínios. Para uma instalação de domínio único, exclua a variável, mas preserve o restante da linha.
* `${panel_domain}` - o domínio do painel administrativo na instalação de três domínios. Para uma instalação de domínio único, exclua a variável, mas preserve o restante da linha.
* `${certificate_name}` - nome do arquivo de certificado com extensão. Deve ser o certificado emitido para o domínio.
* `${private_key_name}` - nome do arquivo da chave privada com extensão. A chave deve corresponder ao certificado.

Salve o arquivo e reinicie o Nginx. Seu site Navixy deverá estar disponível nos domínios especificados.

No caso de instalação em um único domínio, o painel administrativo estará disponível no caminho /panel (por exemplo `https://meu.dominio.com/panel`), e a API estará disponível no caminho /api (por exemplo `https://meu.dominio.com/api`).

#### Redirecionamento HTTP-HTTPS

Quando você usa HTTPS, pode desejar que seus usuários consigam acessar a plataforma mesmo que abram o endereço via HTTP. Para isso, é necessário ter `navixy.conf` (config HTTP) aplicado juntamente com `navixy_ssl.conf` (config HTTPS).

Configure `navixy.conf` conforme especificado acima na **seção “HTTP”** e então descomente a seguinte linha (remova o caractere `#` ):

```
#return 301 https://$host$request_uri;
```

Salve o arquivo e reinicie o Nginx para aplicar as alterações. Agora, as requisições HTTP serão redirecionadas para HTTPS.


---

# 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://navixy.com/docs/on-premise/pt-br/on-premise/how-to-guide/configuration/nginx-web-server.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.
