magento - Nginx Magento SSL ERR_TOO_MANY_REDIRECTS

标签 magento ssl nginx

我有一个错误 ERR_TOO_MANY_REDIRECTS

我实现了 ssl,但我得到了错误

在 Magento 中我有带 ssl 的网站

网络/不安全/base_url https://pontebuso.com/

网络/安全/base_url https://pontebuso.com/

----------------nginx.conf----------------

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
    worker_connections 768;
    # multi_accept on;
}

http {
sendfile on;
autoindex off;


tcp_nopush on;
tcp_nodelay on;

types_hash_max_size 2048;

fastcgi_param HTTPS on;
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

#include /etc/nginx/mime.types;
default_type application/octet-stream;


access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;

gzip  on;
gzip_comp_level 2;
gzip_proxied any;
gzip_types      text/plain text/css application/x-javascript text/xml application/xml application/xml+rss text/javascript;

include       /etc/nginx/mime.types;
include       /etc/nginx/conf.d/*.conf;
include       /etc/nginx/sites-enabled/default;

log_format  main  '$remote_addr - $remote_user [$time_local] "$request "'
                  '$status $body_bytes_sent "$http_referer" '
                  '"$http_user_agent" "$http_x_forwarded_for"';

map $scheme $fastcgi_https { ## Detect when HTTPS is used
    default off;
    https on;
}

----------------网站--------------------

server {
    listen 80;
    server_name pontebuso.com;
    rewrite ^/(.*) https://pontebuso.com/$1 permanent;
}

server {
    listen 443 ssl;

    server_name pontebuso.com;

    ssl on;
    ssl_certificate /etc/nginx/ssl/pontebuso.com.chained.crt;
    ssl_certificate_key /etc/nginx/ssl/pontebuso.key;   

    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
    ssl_prefer_server_ciphers on;



    add_header Access-Control-Allow-Origin sub.pontebuso.com;
    root /home/sites/pontebuso/;

    autoindex off;

    access_log /var/log/nginx/nginx.vhost.access.log;
    error_log /var/log/nginx/nginx.vhost.error.log;

    location / {
        proxy_set_header        X-Forwarded-Proto $scheme;
        fastcgi_param HTTPS on;
        index index.php index.html index.htm;
        try_files $uri $uri/ /index.php?$args; 
        access_log off;
        #expires max; 
    }


    ## These locations would be hidden by .htaccess normally
    location ^~ /app/                { deny all; }
    location ^~ /includes/           { deny all; }
    location ^~ /lib/                { deny all; }
    location ^~ /media/downloadable/ { deny all; }
    location ^~ /pkginfo/            { deny all; }
    location ^~ /report/config.xml   { deny all; }
    location ^~ /var/                { deny all; }


    location /var/export/ {
        auth_basic           "Restricted";
        auth_basic_user_file htpasswd;
        autoindex            on;
    }

    location  /. {
        return 404;
    }

    location @handler {
        rewrite / /index.php;
    }

    location ~ .php/ {
        rewrite ^(.*.php)/ $1 last;
    }

    location ~ .php$ {
        if (!-e $request_filename) { rewrite / /index.php last; }
        expires        off;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param  HTTPS $fastcgi_https;
        fastcgi_param  MAGE_RUN_CODE default;
        fastcgi_param  MAGE_RUN_TYPE store;
        include        fastcgi_params;
    }

    location ~ \.css {
        add_header  Content-Type    text/css;
    }

    location ~ \.js {
        add_header  Content-Type    application/x-javascript;
    }
  }

--------------------默认--------------------

server {
    listen 80;

    server_name pontebuso.com;
    add_header Access-Control-Allow-Origin sub.pontebuso.com;
    root /home/sites/pontebuso/;

    autoindex off;

    location / {
        index index.php index.html index.htm;
        try_files $uri $uri/ /index.php?$args; 
        access_log off;
        expires max; 
    }

    ## These locations would be hidden by .htaccess normally
    location ^~ /app/                { deny all; }
    location ^~ /includes/           { deny all; }
    location ^~ /lib/                { deny all; }
    location ^~ /media/downloadable/ { deny all; }
    location ^~ /pkginfo/            { deny all; }
    location ^~ /report/config.xml   { deny all; }
    location ^~ /var/                { deny all; }

    access_log /var/log/nginx/nginx.vhost.access.log;
    error_log /var/log/nginx/nginx.vhost.error.log;

    location /var/export/ {
        auth_basic           "Restricted";
        auth_basic_user_file htpasswd;
        autoindex            on;
    }

    location  /. {
        return 404;
    }

    location @handler {
        rewrite / /index.php;
    }

    location ~ .php/ {
        rewrite ^(.*.php)/ $1 last;
    }

    location ~ .php$ {
        if (!-e $request_filename) { rewrite / /index.php last; }
        expires        off;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param  HTTPS $fastcgi_https;
        fastcgi_param  MAGE_RUN_CODE default;
        fastcgi_param  MAGE_RUN_TYPE store;
        include        fastcgi_params;
    }

    location ~ .php/ {
        rewrite ^(.*.php)/ $1 last;
     }


     location ~ .php$ { 
        if (!-e $request_filename) { rewrite / /index.php last; }
        expires        off; ## Do not cache dynamic content
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_param  HTTPS $fastcgi_https;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        fastcgi_param  MAGE_RUN_CODE default;
        fastcgi_param  MAGE_RUN_TYPE store;
        include        fastcgi_params; ## See /etc/nginx/fastcgi_params
    }

    location ~ \.css {
        add_header  Content-Type    text/css;
    }

    location ~ \.js {
        add_header  Content-Type    application/x-javascript;
    }


}

最佳答案

如我所见,CSS 无法通过 https 正确加载。所以请仅使用基本安全 url 的 https。

关于magento - Nginx Magento SSL ERR_TOO_MANY_REDIRECTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35805819/

相关文章:

nginx - 将多个域指向 Nginx 中的一台虚拟主机

php - 网格中的 Magento getCollection() 返回 false

Magento - 检查是否安装了模块?

Wordpress www 到非 www 域迁移

nginx - 是否可以使用带重定向的 nginx 在 HTTP 上托管静态页面,在 HTTPS 上托管 Meteor?

redirect - nginx HTTPS 重定向

php - 为初学者覆盖 Magento 管理 Controller

magento - Magento 目录价格规则有时会在白天消失

java - 附加 SSL 客户端证书 okhttp3 。握手失败

mysql - 带 SSL 的 Wildfly mysql