簡體   English   中英

Nginx + PUMA配置

[英]Nginx + puma configuration

這是我的彪馬配置:

path = Dir.pwd + "/tmp/puma/"

threads 0,20
environment "production"
daemonize true
drain_on_shutdown true

# _load_from path

bind  "unix://" + path + "socket/puma.sock"
pidfile path + "pid/puma.pid"
state_path path + "pid/puma.state"

這是我的nginx配置:

upstream rails_app {
  server /srv/rails/project/tmp/puma/socket/puma.sock;
}

server {
# server_name domain.tld www.domain.tld;
  root /srv/rails/project/public;

  try_files $uri/index.html $uri @rails_app;

  location @rails_app {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;

    proxy_pass http://rails_app;
  }

  error_page 500 504 /500.html;
  error_page 502 /502.html;
  error_page 503 /503.html;

  client_max_body_size 4G;
  keepalive_timeout 10;
}

但是,當我重新啟動nginx時:

sudo service nginx restart

我得到這個:

Starting nginx: nginx: [emerg] invalid host in upstream "/srv/rails/project/tmp/puma/socket/puma.sock" in /etc/nginx/sites-enabled/default:2
nginx: configuration file /etc/nginx/nginx.conf test failed

我可以在這里獲得更多線索:

tail -f /var/log/nginx/error.log
2014/04/30 09:07:33 [error] 7517#0: *1 directory index of "/srv/rails/project/" is forbidden, client: <ip address>, server: , request: "GET / HTTP/1.1", host:  <ip address>
2014/04/30 09:35:55 [emerg] 8245#0: invalid host in upstream "/srv/rails/project/tmp/puma/socket/puma.sock" in /etc/nginx/sites-enabled/default:2

但這恐怕對我來說意義不大!

另外,我將我的pid和襪子存儲在項目的根文件夾中。 他們應該在ubuntu服務器上有專門的位置嗎?

您的配置不正確。 正確的上游路徑為:

server unix:///srv/rails/project/tmp/puma/socket/puma.sock;

unix://表示它是一個套接字。 例如,您還可以使用tcp://並將其指向端口,例如tcp://127.0.0.1:8080

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM