Tenho um novo emprego e eles têm tudo configurado na AWS. Temos um servidor de teste que hospeda vários aplicativos.
se eu for
jenkins.example.com
vai para a instância do Jenkins que estamos executando.
se eu for
server.test.example.com
Em seguida, vai para a versão de teste do nosso aplicativo.
Onde isso está configurado (aplicativos diferentes para "subdomínios" diferentes)? Está no Nginx ou nas entradas DNS? Ou ambos ou em outro lugar?
(Não tenho 100% de certeza dos termos que deveria usar para fazer esta pergunta, como "subdomínios", fique à vontade para me dizer quais são).
Responder1
Depende do que você quer fazer.
O que você está perguntando provavelmente requer Nginx em vez de entradas DNS adicionadas.
As entradas DNS CNAME podem redirecionar determinados subdomínios para um determinado domínio (mas não diretamente para um endereço IP específico ou porta em um servidor). Você só precisa de um CNAME se estiver mapeando um subdomínio e redirecionando a solicitação para um nome de domínio diferente (ou seja, subdomínio.exampleone.com refere-se a exampletwo.com).
O Nginx pode atuar como um proxy reverso, pegando subdomínios e redirecionando-os para uma pasta/arquivos ou porta específica em seu servidor. Isso pode ser configurado a partir do seu /etc/nginx/nginx.conf
*, dentro do http {...}
bloco ou no /etc/nginx/sites-enabled/
diretório, onde você pode criar um arquivo separado para cada redirecionamento (onde http {...}
está implícito).
*ou onde quer que seu diretório nginx esteja localizado
O formato adequado para tal redirecionamento (para um aplicativo em uma porta específica) /etc/nginx/nginx.conf
é assim:
server {
# whether you type localhost or 127.0.0.1 or something else here
# depends on your servers /etc/hosts file, where you define how
# the server refers to itself
listen localhost:80;
server_name mysubdomain.example.com;
location / {
proxy_pass http://localhost:MYPORTNUMBER
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Onde você substitui MYPORTNUMBER pela porta em que o aplicativo está sendo executado. O processo de redirecionamento para arquivos estáticos é semelhante, mas em vez de proxy_pass, você faria root /path/to/desired/folder
.
Não tentei especificamente, mas deve funcionar para subdomínios de vários níveis, como o server.test.ourdomain.com
do seu exemplo.