部署 nginx 部署 ROR 程序出错

discovery · 2013年03月04日 · 2211 次阅读

尝试利用 rails 自家的 thin server 配合 nginx 来部署网站,启动 nginx 后,出现 502 bad gateway 错误,以下是 error.log 中相关信息:

2013/03/03 20:17:59 [crit] 25430#0: *274 connect() to unix:///var/www/discourse/tmp/sockets/thin.3.sock failed (2: No such file or directory) while connecting to upstream, client: 66.249.74.235, server: www.arise.biz, request: "GET /robots.txt HTTP/1.1", upstream: "http://unix:///var/www/discourse/tmp/sockets/thin.3.sock:/robots.txt", host: "www.arise.biz" 2013/03/03 20:17:59 [crit] 25430#0: *274 connect() to unix:///var/www/discourse/tmp/sockets/thin.0.sock failed (2: No such file or directory) while connecting to upstream, client: 66.249.74.235, server: www.arise.biz, request: "GET /robots.txt HTTP/1.1", upstream: "http://unix:///var/www/discourse/tmp/sockets/thin.0.sock:/robots.txt", host: "www.arise.biz" 2013/03/03 20:17:59 [crit] 25430#0: *274 connect() to unix:///var/www/discourse/tmp/sockets/thin.1.sock failed (2: No such file or directory) while connecting to upstream, client: 66.249.74.235, server: www.arise.biz, request: "GET /robots.txt HTTP/1.1", upstream: "http://unix:///var/www/discourse/tmp/sockets/thin.1.sock:/robots.txt", host: "www.arise.biz" 2013/03/03 20:17:59 [crit] 25430#0: *274 connect() to unix:///var/www/discourse/tmp/sockets/thin.2.sock failed (2: No such file or directory) while connecting to upstream, client: 66.249.74.235, server: www.arise.biz, request: "GET /robots.txt HTTP/1.1", upstream: "http://unix:///var/www/discourse/tmp/sockets/thin.2.sock:/robots.txt", host: "www.arise.biz"

这是 nginx 的配置文件内容以任意文件名存放在 应用程序目录/config/nginx/sites-enabled 下,该目录下有且只有这个文件, upstream discourse { server unix:///var/www/discourse/tmp/sockets/thin.0.sock; server unix:///var/www/discourse/tmp/sockets/thin.1.sock; server unix:///var/www/discourse/tmp/sockets/thin.2.sock; server unix:///var/www/discourse/tmp/sockets/thin.3.sock; }

server {listen 80; gzip on; gzip_min_length 1000; gzip_types application/json text/css application/x-javascript;

server_name meta.discourse.org;

sendfile on;

keepalive_timeout 65;

location / { root /var/www/discourse/public; location ~ ^/t\/[0-9]+\/[0-9]+\/avatar { expires 1d; add_header Cache-Control public; add_header ETag ""; }

location ~ ^/assets/ { expires 1y; add_header Cache-Control public; add_header ETag ""; break; }

proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host;

# If the file exists as a static file serve it directly without # running all the other rewite tests on it if (-f $request_filename) { break; }

if (!-f $request_filename) { proxy_pass http://discourse; break; }

}

应用程序放在/home/super/var/www,super 是我用户名,上述配置文件中的路径与它吻合吗?请问如何修复这些错误?谢谢!

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号