客服电话
0731-89579388
QQ咨询
微信咨询
周一至周五 工作时间:8:30-18:00
非工作时间请提交工单,会第一时间处理.
你可能遇到了下面的问题
关闭右侧工具栏
宝塔面板:子目录的二级域名开启https绑定SSL证书方法
  • 作者:erdaicms
  • 发表时间:2019-03-02 22:50:43
  • 阅读:72

宝塔服务器面板是目前比较好用的服务器面板之一,功能强大,BUG也比较少,关键还免费,所以现在大家都用的比较多,而目前HTTPS也是大势所趋,宝塔面板默认提供了SSL管理功能,并且可以在线申请SSL证书,一键部署HTTPS比较方便,但是遗憾的是,到目前为止,并不支持子目录开启SSL证书,也就是如果你的证书不是泛域名证书的话,只能启用www域名的https,二级域名就不新了,那么,有没有解决办法呢,答案是有的。

我们二代CMS旅游网站管理系统,最近在开发微信小程序、百度小程序、支付宝小程序的时候,小程序内要嵌入H5移动端页面,而小程序内都只支持HTTPS,HTTP是不能打开的,就碰到了这个问题,下面来说说,我们是怎么解决的(注:宝塔面板为最新版本,证书为阿里云的免费SSL证书)!

首先在阿里云给你的二级域名申请好SSL证书,然后根据你的服务器类型,把证书下载下来,如图:

然后在宝塔面板后台,把二级域名和子目录绑定好,如图所示:

绑定好了以后,解压下载的阿里云证书包,然后上传到服务器上,宝塔自带文件上传功能,直接在宝塔后台批量上传就好了,如图:

上传好了以后,返回到宝塔的网站设置界面,切换到配置文件选项,把当前的配置信息复制一下,保存到本地,本地备份一份,防止万一出错了,好快速还原(这里很重要),接下来,就是关键点了,把以下代码放在配置文件的最后面(按照注释修改好):

<VirtualHost *:443>

ServerAdmin webmasterexample

DocumentRoot "/www/wwwroot/二级域名/2019m/" //这里修改为你实际的子目录路径

ServerName SSL.二级域名 //这里SSL.后面修改为您二级网站的域名

ServerAlias 二级域名 //这里同上修改为您二级网站的域名

errorDocument 404 /404.html

ErrorLog "/www/wwwlogs/二级域名-error_log" //这里的域名相应的改过来

CustomLog "/www/wwwlogs/二级域名-access_log" combined //这里的域名相应的改过来

#SSL

SSLEngine On

SSLCertificateFile /etc/letsencrypt/live/二级域名/*****_public.crt //此处为重点,请把路径修改为上面证书上传的实际路径

SSLCertificateKeyFile /etc/letsencrypt/live/二级域名/*****_.key //此处为重点,请把路径修改为上面证书上传的实际路径

SSLCipherSuite EECDH AESGCM:EDH AESGCM:AES256 EECDH:AES256 EDH

SSLProtocol All -SSLv2 -SSLv3

SSLHonorCipherOrder On

#PHP

<FilesMatch /.php$>

SetHandler "proxy:unix:/tmp/php-cgi-70.sock|fcgi://localhost"

</FilesMatch>

#DENY FILES

<Files ~ (/.user.ini|/.htaccess|/.git|/.svn|/.project|LICENSE|README.md)$>

Order allow,deny

Deny from all

</Files>

#PATH

<Directory "/www/wwwroot/二级域名/2019m"> //这里修改为你实际的子目录路径

SetOutputFilter DEFLATE

Options FollowSymLinks

AllowOverride All

Require all granted

DirectoryIndex index.php index.html index.htm default.php default.html default.htm

</Directory>

</VirtualHost>

上面的代码,有//注释的的地方为需要根据您的实际情况要修改的地方,,其他的地方请不要做任何修改,,完成后,提交就可以了,然后使用https来访问测试效果!