Estou executando um servidor Meteor no meu servidor Ubuntu. Mas problemas surgem quando tento ter o Apache atendendo a um subdomínio no mesmo servidor.
main.domain.com - > Meteoro
sub.domain.com - > Apache
O Meteor está rodando na porta 80. Eu já tentei ter o Meteor rodando na porta 3000 e servido em proxy reverso com Nginx, mas o Meteor começou a se comportar mal (problemas com tcp / websockets) e eu passei muitas noites e noites para persistir por mim mesmo.
Então eu reverti minha configuração para ter o Meteor como o servidor principal (o aplicativo funciona bem) e depois instalar o Apache para servir meu subdomínio. O problema é que eu não posso ter o Apache na porta 80 também, já que parece invadir meu servidor Meteor.
Por experiência, eu tento ficar longe do Meteor com proxy reverso, mas não tenho conhecimento suficiente para fazer com que o Apache se dedique ao meu subdomínio e sem sobrecarregar "tudo o que é a porta 80" no meu servidor.
Como posso ter os dois serviços se comportando uns com os outros nesse tipo de configuração?
Atualização:
Seguindo a sugestão do EasyEcho, passei a usar dois endereços IP diferentes.
Que seja conhecido, estou usando um servidor de nuvem "Next Generation" na Rackspace (executando o último Ubuntu 12.04 LTS com o kernel mais recente do grub2 / atualizado.
A Rackspace não permite IPs adicionais em seus Cloud Servers ( source ). .
The next generation Cloud Servers platform powered by OpenStack does
not yet support additional IP addresses.
... mas você recebe 1 IPv4 e 1 IPv6 ao criar um servidor. Então, por que não entrar no trem do IPv6? Mais fácil falar do que fazer.
Então aqui está o meu "novo problema": Depois de mapear meu subdomínio para o endereço IPv6 (AAAA no DNS) e configurar o Apache para ouvir o endereço IPv6, obtenho o seguinte comportamento:
Do meu desktop remoto do servidor (usando o freeNX), no Firefox
Da minha estação de trabalho (Win7 x64), também no Firefox
Aqui está minha configuração do Apache:
/etc/apache2/ports.conf
NameVirtualHost [my:ip:v6:address]:80
Listen [my:ip:v6:address]:80
<IfModule mod_ssl.c>
Listen 443
</IfModule>
<IfModule mod_gnutls.c>
Listen 443
</IfModule>
/ etc / apache2 / sites-enabled / default
<VirtualHost [my:ip:v6:address]:80>
ServerAdmin webmaster@localhost
ServerName sub.domain.com
DocumentRoot /var/www
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Isso pode ser corrigido para funcionar como "anunciado"?