Você precisa criar um host virtual padrão separado que faça o que quiser:
server {
listen 80 default_server;
return 404;
}
Eu tenho um servidor nginx em execução que possui vários projetos dentro dos sites habilitados. O problema vem ao tentar acessar e url inexistente do projeto, o nginx renderiza o primeiro disponível.
Exemplo, eu tenho um servidor com o IP 111.222.333.444 e NGINX com esses projetos:
Estou criando agora um novo domínio que é ddd.test.com e aponta para o 111.222.333.444 Ao tentar acessar o ddd.test.com, meu navegador abrirá aaa.test.com
Alguma ideia do porquê?
Na minha configuração do projeto nginx eu tenho para aaa.test.com
server {
listen 80;
server_name aaa.test.com;
access_log /usr/local/nginx/logs/aaa.access.log;
error_log /usr/local/nginx/logs/aaa.error.log;
root /var/www/aaa/web;
client_max_body_size 60M;
location / {
index app.php;
if (-f $request_filename) {
break;
}
rewrite ^(.*)$ /app.php last;
}
## Parse all .php file in the /var/www directory
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
fastcgi_pass 127.0.0.1:9001;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $request_filename;
include fastcgi_params;
}
}