Разработка Firebase на локальном хосте. Nginx не пересылать на локальный хост - PullRequest
0 голосов
/ 10 апреля 2020

Я использую raspberrypi в качестве тестового сервера для разработки Firebase.

Он создает эмуляторы для своих служб на всех http://localhost: порт Порты 5000, 501,8080 и др. c.

Для моего проекта, даже во время тестирования, мне потребовался ssl. Поэтому я пытаюсь использовать nginx для прокси всех запросов к этому IP. По какой-то причине я просто не могу заставить это работать.

server {
     listen 192.16.8.181:5000 http2 ssl;
     listen 192.16.8.181:5001 http2 ssl;                                                                                            
     listen 192.16.8.181:8080 http2 ssl;                                                                                            
     listen 192.16.8.181:9000 http2 ssl;                                                                                            
     listen 192.16.8.181:8085 http2 ssl;                                                                                       
     server_name 192.168.8.181;

    ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
    ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;

  location / {
    proxy_pass http://localhost:$server_port;                                                                                      proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_set_header Host $host;
    proxy_cache_bypass $http_upgrade;
  }

}

Есть идеи, почему это не сработает? Возможно, эмулятор firebase и приложение могут конкурировать, даже если они должны быть связаны с разными адресами?

Спасибо!

Я должен добавить, что конфигурация по умолчанию: 80 nginx config работает нормально. Кроме того, на самом сервере я могу lynx в http://localhost: 5000 совершенно нормально. Брандмауэр отключен.

Изначально это было на сервере, но оно перенесено сюда, потому что именно здесь Firebase рекомендует задавать вопросы.

РЕДАКТИРОВАТЬ, я удалил: net .ipv4.ip_nonlocal_bind = 1 из sysctl.conf и теперь мой nginx не работает. Итак, я думаю, вопрос: как мне сделать то, что я пытаюсь сделать? прослушать IP-адрес для https и переслать весь трафик c на http://localhost: $ server_port?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...