【问题标题】:passenger wont find public path乘客找不到公共路径
【发布时间】:2017-05-10 05:43:26
【问题描述】:

我正在尝试设置我的 Rails 服务器,但乘客无法识别我的应用程序并在日志中显示此错误:

[error] 1473#1473: *1 "/home/myapp/public/index.html" is not found (2: No such file or directory)

或客户端出现 404 错误。

我已经完成了所有可能的故障排除,但没有解决。

这是我的服务器块:

server {
    listen 80;
    server_name mydomaiin.com;
    rails_env development;

   # Turn on Passenger
   passenger_enabled on;
   passenger_ruby /home/myapp/.rbenv/versions/2.4.0/bin/ruby;

   # Tell Nginx and Passenger where your app's 'public' directory is
   root /home/myapp/public;
}

谁能帮帮我?

谢谢

【问题讨论】:

  • 你的应用的路径是什么?
  • 运行命令pwd并检查它
  • /home/myapp/myapp
  • 检查我发布的答案并尝试一下

标签: ruby-on-rails nginx passenger rbenv ubuntu-16.10


【解决方案1】:

由于您的根目录位于/home/myapp/myapp,请更新您的服务器配置:

server {
    listen 80;
    server_name mydomaiin.com;
    rails_env development;

   # Turn on Passenger
   passenger_enabled on;
   passenger_ruby /home/myapp/.rbenv/versions/2.4.0/bin/ruby;

   # Tell Nginx and Passenger where your app's 'public' directory is
   root /home/myapp/myapp/public;
}

【讨论】:

  • 完美运行,但是为什么?实际上我的应用程序在 /home/myapp.那么为什么还有一个“/myapp”呢??
  • @Icaro 你的应用在 /home/myapp/myapp 目录下,你可以通过命令查看目录结构:pwd
猜你喜欢
  • 1970-01-01
  • 2017-01-20
  • 2023-03-09
  • 2018-12-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-05
  • 1970-01-01
相关资源
最近更新 更多