最新动态 > 详情
使用宝塔面板的坑--两个SSL安全证书配置
发布时间:2019-01-28 10:08:59
宝塔面板,两个SSL安全证书配置,443端口和80端口共用,URL重写等踩过的坑。看了一定受益!
这里以nginx+mysql+php5.6+win2012阿里云服务器为例
先上配置文件
#START-SITE
server {
listen 80;
listen 443;
server_name dingdan.XXXX.com;
access_log logs/dingdan.XXXX.com.access.log;
root D:/wwwroot/jrtjgw.XXXX.com;
index index.php default.php index.html index.htm default.html default.htm;
include rewrite/dingdan.XXXX.com.conf;
ssl on;
ssl_certificate cert/dingdan.XXXX.com.pem;
ssl_certificate_key cert/dingdan.XXXX.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
#START-ERROR-PAGE
error_page 403 /403.html;
error_page 404 /404.html;
error_page 502 /502.html;
#END-ERROR-PAGE
#301-START
#301-END
#REFERER-START
#REFERER-END
#PROXY-START
#PROXY-END
#START-SSL
#END-SSL
#START-PHP
location ~ \.php$ {
root D:/wwwroot/XXXX;
fastcgi_pass 127.0.0.1:4555;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
#END-PHP
}
#END-SITE
这是在宝塔建站以后,修改站点配置文件后,能够正常运行的配置。
域名证书,不管从哪里获取的,放到配置文件能够读取的路径即可,
可以在配置后,重启nginx服务,再去查看日志文件,日志信息即可。
遇到过的问题:
1.当配置一个SSL证书后,其他80端口的网站默认会跳转到443端口的网站;
解决办法:
(1)不要强制https
(2)ssl on;这一句必须加上
(3)建议新增的时候,先添加443端口网站,修改配置文件再添加80端口;
2.当再次通过配置文件新增另一个SSL证书的另一个域名的网站时,要么两个网站都无法运行,要么前一个不能运行
解决办法:
添加网站时,都添加443端口;
不要强制https;
尽量把80端口都加上;
3.因为站点框架不一样,所以URL重写规则不同,有些网站无法打开,出现404报错
在伪静态处,根据源码框架选择已有的重写规则;
这里以nginx+mysql+php5.6+win2012阿里云服务器为例
先上配置文件
#START-SITE
server {
listen 80;
listen 443;
server_name dingdan.XXXX.com;
access_log logs/dingdan.XXXX.com.access.log;
root D:/wwwroot/jrtjgw.XXXX.com;
index index.php default.php index.html index.htm default.html default.htm;
include rewrite/dingdan.XXXX.com.conf;
ssl on;
ssl_certificate cert/dingdan.XXXX.com.pem;
ssl_certificate_key cert/dingdan.XXXX.com.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
#START-ERROR-PAGE
error_page 403 /403.html;
error_page 404 /404.html;
error_page 502 /502.html;
#END-ERROR-PAGE
#301-START
#301-END
#REFERER-START
#REFERER-END
#PROXY-START
#PROXY-END
#START-SSL
#END-SSL
#START-PHP
location ~ \.php$ {
root D:/wwwroot/XXXX;
fastcgi_pass 127.0.0.1:4555;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
#END-PHP
}
#END-SITE
这是在宝塔建站以后,修改站点配置文件后,能够正常运行的配置。
域名证书,不管从哪里获取的,放到配置文件能够读取的路径即可,
可以在配置后,重启nginx服务,再去查看日志文件,日志信息即可。
遇到过的问题:
1.当配置一个SSL证书后,其他80端口的网站默认会跳转到443端口的网站;
解决办法:
(1)不要强制https
(2)ssl on;这一句必须加上
(3)建议新增的时候,先添加443端口网站,修改配置文件再添加80端口;
2.当再次通过配置文件新增另一个SSL证书的另一个域名的网站时,要么两个网站都无法运行,要么前一个不能运行
解决办法:
添加网站时,都添加443端口;
不要强制https;
尽量把80端口都加上;
3.因为站点框架不一样,所以URL重写规则不同,有些网站无法打开,出现404报错
在伪静态处,根据源码框架选择已有的重写规则;
上一篇: thinkphp框架部署在子目录下,URL问题解决方案
下一篇:阿里云 Centos 磁盘挂载