Ruby on rails 错误310。使用nginx+的重定向过多;轨道3

Ruby on rails 错误310。使用nginx+的重定向过多;轨道3,ruby-on-rails,ssl,Ruby On Rails,Ssl,您好,请在下面查看我的nginx配置。当我试图进入我的主页时,我得到以下错误。当我使用Chrome开发者工具查看重定向时,我看到的是来回重定向。我查看了我的源代码,但在那里找不到任何重定向。我正在使用ssl_需求插件 非常感谢您的帮助 Error 310 (net::ERR_TOO_MANY_REDIRECTS): There were too many redirects. 下面是我的nginx配置文件 server { listen 80; server_name www.

您好,请在下面查看我的nginx配置。当我试图进入我的主页时,我得到以下错误。当我使用Chrome开发者工具查看重定向时,我看到的是来回重定向。我查看了我的源代码,但在那里找不到任何重定向。我正在使用ssl_需求插件

非常感谢您的帮助

Error 310 (net::ERR_TOO_MANY_REDIRECTS): There were too many redirects.
下面是我的nginx配置文件

server {
    listen 80;
    server_name www.mydomain.com;
    rewrite ^/(.*) http://mydomain.com/$1 permanent;
}

server {
    listen 80;

    server_name mydomain.com;

    access_log /var/www/mydomain/current/log/access.log;
    root /var/www/mydomain/current/public;

    passenger_enabled on;
    passenger_use_global_queue on;

    location ~ /\.ht {
       deny all;
    }
}

server {
    listen 443;

    ssl on;
    ssl_certificate /home/ubuntu/ssl-cert/nopassphrase.pem;
    ssl_certificate_key /home/ubuntu/ssl-cert/nopassphrase.key;

    server_name www.mydomain.com;
    rewrite ^/(.*) http://mydomain.com/$1 permanent;
}

server {
    listen 443;

    ssl on;
    ssl_certificate /home/ubuntu/ssl-cert/nopassphrase.pem;
    ssl_certificate_key /home/ubuntu/ssl-cert/nopassphrase.key;

    server_name mydomain.com;

    access_log /var/www/mydomain/current/log/access.log;
    root /var/www/mydomain/current/public;

    location ~* \.(ico|jpg|gif|png|css|js|swf|html)$ {
      if (-f $request_filename) {
        expires max;
        break;
      }
    }
    passenger_enabled on;
    passenger_use_global_queue on;

    location ~ /\.ht {
       deny all;
    }
}

您的配置正在重定向到自身

您可以将http和https放在同一个服务器块中。如果证书不是自签名证书,则该证书应为链式证书

server {
    listen 80;
    server_name www.mydomain.com;
    rewrite ^/(.*) http://mydomain.com/$1 permanent;
}

server {
    listen 80;
    listen 443 ssl;
    server_name mydomain.com;
    ssl_certificate /home/ubuntu/ssl-cert/nopassphrase.pem;
    ssl_certificate_key /home/ubuntu/ssl-cert/nopassphrase.key;

    location ~* \.(ico|jpg|gif|png|css|js|swf|html)$ {
        if (-f $request_filename) {
            expires max;
            break;
        }
    }

    access_log /var/www/mydomain/current/log/access.log;
    root /var/www/mydomain/current/public;

    passenger_enabled on;
    passenger_use_global_queue on;

    location ~ /\.ht {
        deny all;
    }
}