Como corrigir NginX/Phusion/Passenger “zsh:1: arquivo ou diretório inexistente: passageiro/buildout/agents/SpawnPreparer”

Como corrigir NginX/Phusion/Passenger “zsh:1: arquivo ou diretório inexistente: passageiro/buildout/agents/SpawnPreparer”

Esperamos que este seja o site correto para fazer esta pergunta.

Tenho um serviço da web que estou tentando configurar usando NginX com Phusion Passenger em um aplicativo Ruby Sinatra. O problema é que quando tento iniciar o servidor e testar o site, recebo o seguinte erro:

zsh:1: no such file or directory: passenger/buildout/agents/SpawnPreparer

Agora, consegui determinar que SpawnPreparerestá chamando zsh, embora não saiba por quê. Eu nem uso zshe não estava usando quando construí o servidor. Porém, o que eu gostaria de saber é se é possível configurar o passageiro no nginx.conf para usar um shell diferente para gerar seus processos? Se sim, como?

Este é o Phusion 4.0.14

Obrigado!

Responder1

Quando o Phusion Passenger gera um aplicativo, ele o faz invocando o comando $SHELL -lc '/path-to-passenger-root/buildout/agents/SpawnPreparer /path-to-passenger-root/helper-scripts/rack-loader.rb <SOME ARGUMENTS>'. Está descrito aqui:https://github.com/phusion/passenger/wiki/Debugging-application-startup-problems#the-spawning-process-explained. Aqui, $SHELL é o shell do usuário, conforme configurado no banco de dados de usuários do sistema operacional (/etc/passwd). No seu caso, seu usuário está configurado com zsh como shell. Esta é provavelmente a configuração padrão do seu sistema operacional.

Sua mensagem de erro indica que não é possível executar o arquivo passenger/buildout/agents/SpawnPreparer. Em outras palavras, Phusion Passenger pensa que isso /path-to-passengeré igual passenger. Isso provavelmente significa que você definiu o valor incorreto para a passenger_rootdiretiva, que determina o valor adequado de /path-to-passenger.

informação relacionada