Подключите ember к серверу API через nginx

У меня есть прокси-сервер nginx, который подключает сервер API к моему клиенту ember. Это работает без проблем.
Но когда я нажимаю кнопку обновления любого маршрута, кроме корневого, браузер подключается к прокси и пытается обслуживать указанный URL. Например, myapp.com/user попадает в маршрут пользователя на прокси-сервере, и я получаю ответ не найден 404.
Я очень новичок в nginx, поэтому я точно не знаю, как настроить этот сттинг. Вот мой конфиг прокси:

upstream querybuilder {
  # Path to Puma SOCK file, as defined previously
  server unix:/home/deploy/essence/shared/sockets/puma.sock fail_timeout=0;
}

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


  root /home/deploy/essence/public;
  try_files $uri/index.html $uri @querybuilder;

  location @querybuilder {
    proxy_pass http://localhost:2300;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    # try_files /fake_file @querybuilder;
  }

  error_page 500 502 503 504 /500.html;
  client_max_body_size 4G;
  keepalive_timeout 10;
}

Сервер API - это приложение ruby ​​/ hanami. Но это работает без проблем, поэтому я не думаю, что мне нужно перенастроить это.
Может быть, это важно: мы используем ember simple auth для аутентификации.

0 ответов

Другие вопросы по тегам