Nginx: приложение Proxy Pass Meteor в качестве каталога - PullRequest
0 голосов
/ 25 мая 2018

Я запускаю приложение метеора на порту 3000 и хочу, чтобы прокси-сервер передал его по nginx на адрес example.com/meteor.

Я пробовал его со следующей конфигурацией, но она не удалась.Когда я делаю это с поддоменом, таким как meteor.example.com, он работает.

 server {
    listen 80;
    server_name example.com/meteor www.example.com/meteor;

    location / {
        proxy_set_header   X-Real-IP $remote_addr;
        proxy_set_header   Host      $http_host;
        proxy_pass         http://127.0.0.1:3000;
    }
}

Кроме этого, у меня также есть конфигурация по умолчанию , которая выглядит следующим образом:

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    # SSL configuration
    #
    listen 443 ssl default_server;
    listen [::]:443 ssl default_server;

    include snippets/ssl-example.com.conf;
    include snippets/ssl-params.conf;

    root /var/www/html;

    index index.html index.htm index.nginx-debian.html index.php;

    server_name _;

    location / {
            try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
            include snippets/fastcgi-php.conf;
            fastcgi_pass unix:/var/run/php5-fpm.sock;
    }
}

1 Ответ

0 голосов
/ 25 мая 2018

Вы должны добавить / meteor location в разделе вашего исправленного сервера

   server {
       listen 80;
       server_name example.com www.example.com;

       location /meteor {
          proxy_set_header   X-Real-IP $remote_addr;
          proxy_set_header   Host      $http_host;
          proxy_pass         http://127.0.0.1:3000;
       }

       #untested
       location ~ /scripts/(.*)$ {
          rewrite ^ /meteor/$1?$args permanent;
       }
    }
...