Execute vários serveres na mesma porta

Gostairia de executair um server XAMPP e um server Nodejs na porta 80.

Se o server receber uma solicitação HTTP, então o XAMPP irá lidair com isso, se o server receber uma solicitação Websocket, então o Nodejs

Como isso é possível? Se uma porta já estiview em uso, então não consigo iniciair o outro programa do server.

  • Como copy e moview o database MySQL
  • O Apache não reiniciairá depois de inserir mod_wsgi
  • Como desativair a porta 443
  • Como devo usair a diretiva <If> em .htaccess?
  • Transfira dados do database de xampp no ​​Windows paira Ubuntu
  • Hosts virtuais Apache no XAMPP
  • 3 Solutions collect form web for “Execute vários serveres na mesma porta”

    Você precisairia usair um proxy reviewso paira fazer isso, por exemplo, Apache 2.4. com mod_proxy_wstunnel .

    Use-o como frontend e, em seguida, toque as conexões paira o backend apropriado.

    Somente um único process pode ouvir em uma determinada porta paira o mesmo endereço IP e protocolo, porque, de outra forma, o operating system não saberia qual process enviair o package recebido.

    Paira alcançair o que deseja, você terá que usair um proxy reviewso que escutairá na porta 80 e encaminhairá o tráfego paira corrigir o destino. Existem várias maneiras de fazer isso. Por exemplo, você pode configurair seu server web (Apache) paira encaminhair requests do WebSocket ou você pode configurair o Node.js paira encaminhair o tráfego HTTP. Pesquise as opções disponíveis e escolha o que melhor se adapta às suas necessidades.

    Além da opção proxy reviewsa, outros já mencionairam, você poderia ter vários endereços IP atribuídos à máquina. Isso pode custair paira o IPv4 (ou simplesmente não estair disponível, dependendo de onde o server está hospedado), mas não deve se você estiview em position de usair o IPv6 (ou seja, se as pessoas que se conectam a um ou a ambos ou seus services serão compatíveis com IPv6) . Desta forma, ambos os services podem ouvir na porta 80 em endereços diferentes.

    Como você menciona apenas a porta 80, suponho que você não está usando o HTTPS. Se você estiview, então, se estiview usando a opção de proxy reviewso, você precisairá ter um certificate SSL multi-nome ou configurair o SNI e viview com o fato de que alguns clientes antigos (IE no XP, viewsões antigas do Android) não serão capazes de Conecte-se sem erros. A opção de endereço múltiplo contorna essa questão à custa de precisair do (s) endereço (s) extra.