尝试利用 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 是我用户名,上述配置文件中的路径与它吻合吗?请问如何修复这些错误?谢谢!