为什么使用 Nginx 的乘客在我的 rails 应用程序中寻找 passenger_wsgi.py

Why is passenger with Nginx looking for passenger_wsgi.py in my rails app

我的配置文件看起来像

root /var/www/root/public;

    # Turn on Passenger
    passenger_enabled on;
    passenger_ruby /usr/local/rvm/gems/ruby-2.5.1/wrappers/ruby;

每当我 curl 访问该站点时,我在 Nginx 日志中看到的错误是

Cannot stat '/var/www/root/passenger_wsgi.py': Permission denied (errno=13); This error means that the Nginx worker process (PID 4417, running as UID 33) does not have permission to access this file.

但这是一个 rails 应用程序,我没有 python。

passenger gem 已安装,应用已部署到生产模式。

为什么要查找 python 文件,我该如何解决这个错误?

如果有帮助,我在 Linode 上,我正在使用 rvm。

根据 post 中提到的描述,您似乎没有为 ruby 应用程序正确安装 passenger。

在安装 passenger 的过程中,有一些选项可以选择您希望针对哪种语言进行安装(节点、python、ruby 等)。

现在根据共享的日志,它似乎正在充当 python 应用程序的应用程序服务器。

我遇到了同样的问题,我发现完成这项工作的唯一方法是卸载 passenger 并重新安装(选择 ruby 作为 )。