Isso é realmente o que eu estava procurando.
<VirtualHost *:80>
ServerName subdomain.yourdomain.com
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
</VirtualHost>
Atualmente, tenho um servidor que executa um aplicativo da Web em Python na porta 8000. Ele é acessível publicamente na Web (no IP do servidor) sem problemas.
Gostaria de disponibilizar este aplicativo da web em um subdomínio para que você não tenha que acessar o endereço IP para executar o aplicativo da web. Eu já consegui abrir um subdomínio que espelha o que está no diretório raiz, mas como posso rotear meu aplicativo web do Python através desse subdomínio usando o Apache?
Obrigado por qualquer ajuda.
Se o seu DNS estiver configurado corretamente e seu subdomínio my-app.example.com
apontar para o endereço IP do seu servidor, as pessoas poderão usar imediatamente http://my-app.example.com:8000/
em vez de http://<your ip-address>:8000
.
Se você já tem algum site existente na porta padrão para http (porta TCP 80), não pode fazer com que o aplicativo da Web ouça diretamente na porta 80. Em vez disso, você pode usar a funcionalidade de Proxy Reverso do Apache para que as pessoas não precisem digitar o número da porta :8000
e possam acessar seu App a partir da porta HTTP padrão usando http://my-app.example.com/
Configure um novo host virtual para my-app.example.com
:
<VirtualHost *:80>
ServerName my-app.example.com
ProxyPass / http://127.0.0.1:8000/
ProxyPassReverse / http://127.0.0.1:8000/
</VirtualHost>