Как правильно установить passenger_base_uri в автономном режиме - PullRequest
0 голосов
/ 14 января 2019

В настоящее время я пытаюсь определить, как правильно установить passenger_base_uri при запуске пассажира в автономном режиме. Я попытался переопределить nginx.conf.erb, чтобы включить passenger_base_uri, я также попытался установить блок местоположения, как указано на https://www.phusionpassenger.com/library/deploy/nginx/deploy/ruby/#deploying-an-app-to-a-sub-uri Оба этих метода дали странный результат случайного обслуживания 404-х.

Было бы любопытно, если бы существовал простой способ настроить это для отдельного приложения (похоже, что в какой-то момент могла быть опция переменной среды, чтобы разрешить это?).

Я не пытаюсь развернуть несколько приложений на одном пассажирском сервере, я просто пытаюсь изменить контекст одного приложения без необходимости изменять маршруты.

Версии с пассажирского статуса: nginx / 1.12.2 Phusion_Passenger / 5.2.3

Обновление: Я попробовал на последней версии пассажира (6.0.1) и до сих пор вижу случайные 404. Я также попытался повысить уровень ведения журнала для пассажира, и кажется, что существует проблема, при которой некоторые процессы пассажиров не устанавливают надлежащим образом значение «SCRIPT_NAME» до прохождения запроса. Я не могу воспроизвести эту ошибку локально, но могу надежно воспроизвести ее в развернутом экземпляре.

Один и тот же пид, обслуживающий 404 и 200 с:

# passenger-status && curl -I -k https://127.0.0.1/test/meta/availability
Version : 6.0.1
Date    : 2019-01-23 00:31:59 +0000
Instance: 36X3YTqe (nginx/1.15.8 Phusion_Passenger/6.0.1)

----------- General information -----------
Max pool size : 10
App groups    : 1
Processes     : 10
Requests in top-level queue : 0

----------- Application groups -----------
/opt/app (production):
  App root: /opt/app
  Requests in queue: 0
  * PID: 129     Sessions: 0       Processed: 59      Uptime: 12m 55s
    CPU: 0%      Memory  : 68M     Last used: 1s ago
  * PID: 152     Sessions: 0       Processed: 1       Uptime: 12m 54s
    CPU: 0%      Memory  : 45M     Last used: 12m 54s ago
  * PID: 176     Sessions: 0       Processed: 0       Uptime: 12m 54s
    CPU: 0%      Memory  : 41M     Last used: 12m 54s ago
  * PID: 202     Sessions: 0       Processed: 0       Uptime: 12m 53s
    CPU: 0%      Memory  : 41M     Last used: 12m 53s ago
....

HTTP/1.1 200 OK
Date: Wed, 23 Jan 2019 00:32:00 GMT
X-Powered-By: Phusion Passenger 6.0.1
Server: nginx/1.15.8 + Phusion Passenger 6.0.1
# passenger-status && curl -I -k https://127.0.0.1/test/meta/availability
Version : 6.0.1
Date    : 2019-01-23 00:32:01 +0000
Instance: 36X3YTqe (nginx/1.15.8 Phusion_Passenger/6.0.1)

----------- General information -----------
Max pool size : 10
App groups    : 1
Processes     : 10
Requests in top-level queue : 0

----------- Application groups -----------
/opt/app (production):
  App root: /opt/app
  Requests in queue: 0
  * PID: 129     Sessions: 0       Processed: 60      Uptime: 12m 57s
    CPU: 0%      Memory  : 68M     Last used: 1s ago
  * PID: 152     Sessions: 0       Processed: 1       Uptime: 12m 56s
    CPU: 0%      Memory  : 45M     Last used: 12m 56s ago
  * PID: 176     Sessions: 0       Processed: 0       Uptime: 12m 56s
    CPU: 0%      Memory  : 41M     Last used: 12m 56s ago
  * PID: 202     Sessions: 0       Processed: 0       Uptime: 12m 55s
    CPU: 0%      Memory  : 41M     Last used: 12m 55s ago
....

HTTP/1.1 404 Not Found
Date: Wed, 23 Jan 2019 00:32:01 GMT
X-Powered-By: Phusion Passenger 6.0.1
Server: nginx/1.15.8 + Phusion Passenger 6.0.1

1 Ответ

0 голосов
/ 28 января 2019

Получил отзыв о похожем звучании Github Issue . Похоже, проблема с более новыми версиями пассажира (больше 5.1, текущая максимальная доступная - 6.0.1). Должно быть возможно просто установить passenger_base_uri, но ошибка приводит к случайным 404 с.

...