利用宝塔如何让两个不同主域的二级域名绑定到同一网站同时添加ssl证书。

这句话好像有点拗口。

首先这是不同主域的两个二级域名的解决方案,如果是同一主域的二级域名可以申请根域名证书解决,这里不再赘述。

首先要利用宝塔面板的后台申请不同域名证书,这里我都申请的letsencrypt证书,申请完以后找的证书所在文件夹,如果不知道目录的可以通过文件管理器搜索域名找的。

证书都申请好以后,在宝塔站点管理里面点击对应站点的 设置-配置文件

宝塔如何让两个不同主域的二级域名绑定到同一网站同时添加ssl证书

你会看着配置文件的内容是这样的

server

{

    listen 80;

listen 443 ssl http2;

    server_name erji.a.com erji.b.com;

    index index.php index.html index.htm default.php default.htm default.html;

    root /home/www/wwwroot/erji.a.com/think/public;

    

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则

    #error_page 404/404.html;

    #HTTP_TO_HTTPS_START

    if ($server_port !~ 443){

        rewrite ^(/.*)$ https://$host$1 permanent;

    }

    #HTTP_TO_HTTPS_END

    ssl_certificate    /www/server/panel/vhost/cert/erji.a.com/fullchain.pem;

    ssl_certificate_key    /www/server/panel/vhost/cert/erji.a.com/privkey.pem;

    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

    ssl_prefer_server_ciphers on;

    ssl_session_cache shared:SSL:10m;

    ssl_session_timeout 10m;

    add_header Strict-Transport-Security "max-age=31536000";

    error_page 497  https://$host$request_uri;



    #SSL-END

    

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改

    #error_page 404 /404.html;

    #error_page 502 /502.html;

    #ERROR-PAGE-END

    

    #PHP-INFO-START  PHP引用配置,可以注释或修改

    include enable-php-74.conf;

    #PHP-INFO-END

    

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效

    include /www/server/panel/vhost/rewrite/erji.a.com.conf;

    #REWRITE-END

    

    #禁止访问的文件或目录

    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

    {

        return 404;

    }

    

    #一键申请SSL证书验证目录相关设置

    location ~ \.well-known{

        allow all;

    }

    

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

    {

        expires      30d;

        error_log /dev/null;

        access_log /dev/null;

    }

    

    location ~ .*\.(js|css)?$

    {

        expires      12h;

        error_log /dev/null;

        access_log /dev/null; 

    }

    access_log  /www/wwwlogs/erji.a.com.log;

    error_log  /www/wwwlogs/erji.a.com.error.log;

}

复制完全完整的一份,然后在底部添加,修改为一下内容

server

{

    listen 80;

listen 443 ssl http2;

    server_name erji.a.com;

    index index.php index.html index.htm default.php default.htm default.html;

    root /home/www/wwwroot/erji.a.com/think/public;

    

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则

    #error_page 404/404.html;

    #HTTP_TO_HTTPS_START

    if ($server_port !~ 443){

        rewrite ^(/.*)$ https://$host$1 permanent;

    }

    #HTTP_TO_HTTPS_END

    ssl_certificate    /www/server/panel/vhost/cert/erji.a.com/fullchain.pem;

    ssl_certificate_key    /www/server/panel/vhost/cert/erji.a.com/privkey.pem;

    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

    ssl_prefer_server_ciphers on;

    ssl_session_cache shared:SSL:10m;

    ssl_session_timeout 10m;

    add_header Strict-Transport-Security "max-age=31536000";

    error_page 497  https://$host$request_uri;



    #SSL-END

    

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改

    #error_page 404 /404.html;

    #error_page 502 /502.html;

    #ERROR-PAGE-END

    

    #PHP-INFO-START  PHP引用配置,可以注释或修改

    include enable-php-74.conf;

    #PHP-INFO-END

    

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效

    include /www/server/panel/vhost/rewrite/erji.a.com.conf;

    #REWRITE-END

    

    #禁止访问的文件或目录

    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

    {

        return 404;

    }

    

    #一键申请SSL证书验证目录相关设置

    location ~ \.well-known{

        allow all;

    }

    

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

    {

        expires      30d;

        error_log /dev/null;

        access_log /dev/null;

    }

    

    location ~ .*\.(js|css)?$

    {

        expires      12h;

        error_log /dev/null;

        access_log /dev/null; 

    }

    access_log  /www/wwwlogs/erji.a.com.log;

    error_log  /www/wwwlogs/erji.a.com.error.log;

}

server

{

    listen 80;

listen 443 ssl http2;

    server_name erji.b.com;

    index index.php index.html index.htm default.php default.htm default.html;

    root /home/www/wwwroot/erji.a.com/think/public;

    

    #SSL-START SSL相关配置,请勿删除或修改下一行带注释的404规则

    #error_page 404/404.html;

    #HTTP_TO_HTTPS_START

    if ($server_port !~ 443){

        rewrite ^(/.*)$ https://$host$1 permanent;

    }

    #HTTP_TO_HTTPS_END

    ssl_certificate    /www/server/panel/vhost/letsencrypt/erji.b.com/fullchain.pem;

    ssl_certificate_key    /www/server/panel/vhost/letsencrypt/erji.b.com/privkey.pem;

    ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;

    ssl_ciphers EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;

    ssl_prefer_server_ciphers on;

    ssl_session_cache shared:SSL:10m;

    ssl_session_timeout 10m;

    add_header Strict-Transport-Security "max-age=31536000";

    error_page 497  https://$host$request_uri;



    #SSL-END

    

    #ERROR-PAGE-START  错误页配置,可以注释、删除或修改

    #error_page 404 /404.html;

    #error_page 502 /502.html;

    #ERROR-PAGE-END

    

    #PHP-INFO-START  PHP引用配置,可以注释或修改

    include enable-php-74.conf;

    #PHP-INFO-END

    

    #REWRITE-START URL重写规则引用,修改后将导致面板设置的伪静态规则失效

    include /www/server/panel/vhost/rewrite/erji.a.com.conf;

    #REWRITE-END

    

    #禁止访问的文件或目录

    location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)

    {

        return 404;

    }

    

    #一键申请SSL证书验证目录相关设置

    location ~ \.well-known{

        allow all;

    }

    

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$

    {

        expires      30d;

        error_log /dev/null;

        access_log /dev/null;

    }

    

    location ~ .*\.(js|css)?$

    {

        expires      12h;

        error_log /dev/null;

        access_log /dev/null; 

    }

    access_log  /www/wwwlogs/erji.b.com.log;

    error_log  /www/wwwlogs/erji.b.com.error.log;

}


注意看标红的位置是修改和有差异的地方。

至此完美解决,不同的两个域名ssl证书共存的问题。

标签:石家庄小程序开发 宝塔面板 二级域名 ssl证书