O que é default_server em nginx

O que é default_server em nginx
Como um servidor da web, Nginx permite que você defina vários blocos de servidor em seu arquivo de configuração. Todos esses servidores operam como servidores da Web virtuais separados. Como resultado, é necessária uma abordagem para determinar qual servidor lidará com solicitações de entrada específicas. No arquivo de configuração Nginx, o sinalizador Default_server é usado para esse fim.

O que é default_server em nginx

Em um bloco de servidor, quando o default_server A bandeira é adicionada em uma diretiva de escuta, Nginx declarará esse servidor como o servidor padrão. Depois disso, o Nginx utilizará o servidor padrão para lidar com as solicitações quando o cabeçalho do host HTTP permanecer incomparável com qualquer outro bloco de servidor. O sinalizador Default_server só pode ser adicionado uma vez em um bloco de servidor com qualquer combinação IP: Porta especificada como um parâmetro da Diretiva Lista. No entanto, a bandeira Default_server pode ser utilizada várias vezes em diferentes combinações de IP: porta.

Antes de usar default_server no nginx, você deve instalar o nginx no seu sistema, se você não o tiver já!

Como instalar o nginx no CentOS

Em primeiro lugar, abra seu terminal do CentOS pressionando “Ctrl+alt+t”E depois escreva o comando abaixo do ritmo:

$ sudo yum install nginx

A saída livre de erros declara que o nginx é instalado com sucesso em seu sistema.

Como habilitar o nginx no CentOS

Agora, utilize o comando abaixo de permitir o NGINX no sistema CentOS:

$ sudo systemctl atabille nginx

Depois disso, inicie o serviço Nginx:

$ sudo systemctl start nginx

Como definir regras de firewall para o nginx no CentOS

A próxima coisa que vamos fazer é definir as configurações do firewall para permitir as conexões externas para o nginx, executando na porta 80 por padrão. O Firewall-CMD é o comando que é utilizado para gerenciar a configuração do firewalld permanente e de tempo de execução.

Para ativar permanentemente as conexões HTTP na porta 80, escreva o comando abaixo do seu terminal do CentOS:

$ sudo firewall-cmd --permanent --Add-Service = http

Para verificar se o Http O serviço de firewall foi adicionado corretamente ao sistema, execute este comando:

$ sudo firewall-cmd-permanente-lista-tudo

Agora, você tem que recarregar o serviço de firewall:

$ sudo firewall-cmd--reload

Como configurar servidores no nginx

No arquivo de configuração Nginx, as diretivas de configuração do servidor, como o nome do servidor e Porta TCP são especificados no bloco do servidor . A Diretiva Lista instrui o nginx a ouvir conexões HTTP na porta IP e TCP especificada. Quando o Nginx lida com uma solicitação, a diretiva de nome do servidor instrui a selecionar um servidor específico em uma lista de vários blocos de servidor.

Se você deseja configurar um servidor virtual no nginx, então em seu editor de nano, abra o arquivo de configuração nginx “/etc/nginx/nginx.conf”:

$ sudo nano/etc/nginx/nginx.conf

Seu arquivo de configuração nginx ficará assim:

Seu arquivo de configuração nginx deve conter pelo menos uma diretiva de servidor para definir um servidor virtual. Ao processar uma solicitação, o nginx determina primeiro qual servidor virtual vai lidar com a solicitação. No contexto HTTP, um servidor virtual é definido por uma diretiva de servidor, como:

http
servidor
# Configuração do servidor

No bloco do servidor, você pode definir todas as configurações relacionadas ao servidor específico:

Várias diretivas de servidor são adicionadas ao contexto HTTP para definir vários servidores virtuais. O "ouvir”A diretiva no bloco de configuração do servidor é utilizada para adicionar o endereço IP e a porta na qual o servidor ouve as solicitações. Os endereços IPv4 e IPv6 são permitidos e os endereços IPv6 devem ser adicionados dentro dos colchetes quadrados.

A configuração de um servidor ouvindo na porta 8080 e endereço IP 127.0.0.1 é mostrado no exemplo abaixo:

http
servidor
Ouça 127.0.0.1: 8080;
# Configuração adicional do servidor

Como configurar um servidor padrão no nginx

No Nginx arquivo de configuração, o default_server Opção Especifica o servidor padrão para o qual uma solicitação de cliente com um domínio desconhecido e um campo host vazio será encaminhado. Por exemplo, quando um cliente escreve o endereço IP do servidor em um navegador ou tem muitos domínios, como Linuxhint.com, test1.Linuxhint.com e test2.Linuxhint.com, nem todos eles são mencionados no arquivo de configuração nginx.

Se você não adicionou o “default_server”Parâmetro para qualquer servidor virtual, o primeiro servidor será considerado o padrão. No entanto, você pode especificar explicitamente um default_server da seguinte maneira:

servidor
Ouça 80 default_server;
#…

A configuração nginx considerará este servidor como seu “default_server”:

Você também pode adicionar outro parâmetro de configuração, como o nome do servidor e o diretório que contém todos os arquivos de configuração:

servidor
Ouça 80 default_server;
nome do servidor _;
root/usr/share/nginx/html;

Salve as linhas adicionadas no “/etc/nginx/nginx.conf”Arquivo pressionando“Ctrl+o”:

Agora, teste o arquivo de configuração do nginx e sua sintaxe executando o “nginx”Comando com o“-t”Opção:

$ sudo nginx -t

Após testes bem -sucedidos, reinicie o Nginx Serviço para que seu sistema entre em vigor com as alterações adicionadas:

$ sudo systemctl reinicie nginx

Conclusão

No Nginx Arquivo de configuração, o bloco do servidor especifica um servidor virtual para lidar com tipos específicos de solicitações. Depois de configurar vários blocos de servidor, os administradores escolhem blocos para a conexão. Esta seleção é baseada no endereço IP, porta e nome de domínio da solicitação. No entanto, você também pode especificar um default_server Para lidar com os pedidos recebidos. Nesta postagem, explicamos o Default_server e como você configura servidores virtuais, incluindo o servidor padrão no Nginx.