SSL-сертификат работает для основного домена, но не для поддоменов - PullRequest
0 голосов
/ 18 октября 2019

На сервере Nginx я установил SSL-сертификат для основного домена, скажем, xyz.com и поддоменов a.xyz.com, b.xyz.com, c.xyz.com. В браузере только xyz.com работает по протоколу https, а не его поддоменам.

Я проверил указанные домены на провайдере SSL, и все вышеперечисленные сертифицированы. Сертификат генерируется из многодоменной учетной записи, каждый субдомен будет рассматриваться как сам домен, а не как субдомен.

При создании CSR для вышеуказанного сертификата обычно используется имя xyz.com, если оно будетподстановочный знак, тогда * .xyz.com будет использоваться

Мой код файла nginx.conf ниже

    user  www;
    worker_processes  1;
    events {
       worker_connections  1024;
    }
    http {
    include       mime.types;
    default_type  application/octet-stream; 

    server {
        listen       443 ssl;
        add_header X-Frame-Options "SAMEORIGIN";

        server_name xyz.com
                    a.xyz.com
                    b.xyz.com
                    c.xyz.com
        ;

        ssl    on;
        ssl_certificate    /etc/ssl/xyz.crt;
        ssl_certificate_key /etc/ssl/xyz.com.key;


        root /usr/local/www/app/webroot;
        index  index.html index.php;    
        error_log /usr/local/etc/nginx/log/error_log info;


        location / {
             try_files $uri /index.php$is_args$args;
        }

        client_max_body_size 25M;
        proxy_request_buffering off;

        location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            if (!-f $document_root$fastcgi_script_name) {
                    return 404;
            }           
            fastcgi_param HTTP_PROXY "";     
            fastcgi_pass unix:/var/run/php72-fpm.sock;
            fastcgi_index index.php;            
            include fastcgi_params;     
            fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        }


    }


    server {
        listen      80 ;
        add_header X-Frame-Options "SAMEORIGIN";     

        root /usr/local/www/app/webroot;
        index  index.html index.php;    
        error_log /usr/local/etc/nginx/log/error_log info;

        location / {
             try_files $uri /index.php$is_args$args;
        }

        client_max_body_size 25M;
        proxy_request_buffering off;

        location ~ [^/]\.php(/|$) {
            fastcgi_split_path_info ^(.+?\.php)(/.*)$;
            if (!-f $document_root$fastcgi_script_name) {
                    return 404;
            } 

            fastcgi_param HTTP_PROXY "";     
            fastcgi_pass unix:/var/run/php72-fpm.sock;
            fastcgi_index index.php;            
            include fastcgi_params;     
            fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        }
    }   
}

Пожалуйста, дайте мне знать, что является возможной проблемой?

...