ruby-on-rails – 在nginx和unicorn设置上Rails重定向失败

我按照Railscasts第293集中的描述设置了nginx和unicorn.

当我尝试重定向时,例如

class PostsController < ApplicationController
  def show
    redirect_to posts_path,:notice => "Test redirect"
  end
end

我被重定向到http:// unicorn / posts而不是http://mydomain.com/posts

这是我的应用程序的nginx.conf

upstream unicorn {
  server unix:/tmp/unicorn.scvrush.sock fail_timeout=0;
}

server {
  listen 80 default deferred;
  # server_name example.com;
  root /var/apps/current/public;  

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

  location @unicorn {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://unicorn;
  }

  keepalive_timeout 5;
}
最佳答案
这对我有用:

upstream unicorn {
  server unix:/tmp/unicorn.example.sock fail_timeout=0;
}

server {
  listen       80;
  listen       localhost;
  server_name  www.example.com;
  keepalive_timeout 5;

  location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    # this is required for HTTPS:                                                                                                                                                                                                                                             
    # proxy_set_header X-Forwarded-Proto https;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass http://unicorn;
  }

}

在我的./config/unicorn.rb文件中:

# Listen on a Unix data socket                                                                                                                                                                                                                                                                                  
listen "/tmp/unicorn.example.sock",:backlog => 64

相关文章

文章浏览阅读3.7k次,点赞2次,收藏5次。Nginx学习笔记一、N...
文章浏览阅读1.7w次,点赞14次,收藏61次。我们在使用容器的...
文章浏览阅读1.4k次。当用户在访问网站的过程中遇到404错误时...
文章浏览阅读2.7k次。docker 和 docker-compose 部署 nginx+...
文章浏览阅读1.3k次。5:再次启动nginx,可以正常启动,可以...
文章浏览阅读3.1w次,点赞105次,收藏182次。高性能:Nginx ...