nginx:[emerg]“passenger_root”指令中的参数数量无效

Ben*_*Ben 9 passenger nginx amazon-ec2 rubber ruby-2.1

我第一次尝试在 EC2 上设置 Rubber (complete_passenger_nginx_postgresql)。我更改了配置文件中的一系列设置,使其能够与不同的 AMI(Ubuntu 12.04.3 LTS - ami-a73264ce(64 位))、Ruby 2.1.0、Passenger 4.0.29 和 Nginx 1.4.4 配合使用。我几乎让它工作了,但是启动 Nginx 时失败并出现以下错误:

nginx: [emerg] invalid number of arguments in "passenger_root" directive in /etc/nginx/nginx.conf:45
Run Code Online (Sandbox Code Playgroud)

ruby-passenger_nginx.yml 具有以下“passenger_root”代码:

passenger_lib: "#{passenger_root}/ext/nginx"
Run Code Online (Sandbox Code Playgroud)

知道我应该改变什么才能让它发挥作用吗?

KAR*_*N.A 16

;就我而言,我错过了在根目录声明末尾提及

错误:

root "/directory/with double quotes/will work"
Run Code Online (Sandbox Code Playgroud)

解决方案:

root "/directory/with double quotes/will work";
Run Code Online (Sandbox Code Playgroud)

  • 救生员 lmfao (2认同)

gri*_*ure 3

您的 /etc/nginx/nginx.conf 文件中有错误。

\n\n

更改行:

\n\n
passenger_root /usr/local/rubies/2.1.0/lib/ruby/gems/2.1.0/extensions/x86_64-linux/2.1.0-static\xe2\x80\x8c\xe2\x80\x8b/passenger-4.0.29\n/usr/local/rubies/2.1.0/lib/ruby/gems/2.1.0/gems/passenger-4.0.29;\npassenger_ruby /usr/local/rubies/2.1.0/bin/ruby;\n
Run Code Online (Sandbox Code Playgroud)\n\n

进入:

\n\n
passenger_root /usr/local/rubies/2.1.0/lib/ruby/gems/2.1.0/gems/passenger-4.0.29;\npassenger_ruby /usr/local/rubies/2.1.0/bin/ruby;\n
Run Code Online (Sandbox Code Playgroud)\n