Nginx para endereçar o aplicativo Nodejs [closed]

1

Estou usando um servidor web Ubuntu com o Plesk 11.5.x. Eu adicionei o Nodejs e agora eu quero endereçar o aplicativo Nodejs com um subdomínio.

Website: domain.tld

Aplicativo Nodejs: app.domain.tld

Atualmente trabalhando: domain.tld:2368 , mas eu quero ocultar a porta com a ajuda de um subdomínio.

Eu deveria poder fazer o seguinte:

upstream app_myApp {
    server 127.0.0.1:2368;
}

server {
    listen 0.0.0.0:80;
    server_name app.domain.tld;

    location / {
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header Host $http_host;
      proxy_set_header X-NginX-Proxy true;

      proxy_pass http://app_myApp/;
      proxy_redirect off;
    }
 }

Meu problema é onde colocar isso, porque estou usando o Plesk. No Plesk 11.5, .../system/domain.tld/conf/vhost_nginx.conf são upstream e os comandos do servidor não são permitidos. E location / também não é possível.

Acho que precisaria de algo como /etc/nginx/sites-available/domain.tld . Eu não tenho idéia de onde adicionar isso sem quebrar o plesk ou minha configuração sendo sobrescrita em um reconfig automático plesk.

Alguma idéia?

    
por Florian Brinker 24.09.2013 / 13:42

1 resposta

1

Você pode editar o arquivo de modelo nginx

mkdir /usr/local/psa/admin/conf/templates/custom/domain
cp /usr/local/psa/admin/conf/templates/default/domain/nginxDomainVirtualHost.php /usr/local/psa/admin/conf/templates/custom/domain 

no novo arquivo /usr/local/psa/admin/conf/templates/custom/domain/nginxDomainVirtualHost.php encontre as seguintes linhas:

    location / {
<?php echo $VAR->includeTemplate('domain/service/proxy.php', $OPT); ?>
    }

e ajuste-o às suas necessidades:

    location / {
<?php if ('mydomain.tld' == $VAR->domain->asciiName ) {
         echo $VAR->includeTemplate('PATHTONODECONFIG.php', $OPT); ?>
       } else {
         echo $VAR->includeTemplate('domain/service/proxy.php', $OPT); ?>
     }

Sugiro parametrizar essa condição, para ser mais flexível

    
por 24.09.2013 / 14:04