思路在于ssl证书申请和中间件的配置更改,目前阿里云和华为云都有免费的ssl证书可以用
测试使用版本 ubuntu18.04 Server version: Apache/2.4.29 (Ubuntu)
nginx version: nginx/1.14.0 (Ubuntu)
两个中间件结构都类似
ngnix配置/etc/nginx/sites-available/default 添加对443端口的监听 然后指定证书的路径
server {
listen 443;
server_name XXX.com; #填写绑定证书的域名
ssl on;
ssl_certificate /etc/nginx/sites-available/ssl1.pem;
ssl_certificate_key /etc/nginx/sites-available/ssl1.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #按照这个协议配置
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;#按照这个套件配置
ssl_prefer_server_ciphers on;
location / {
root /var/www/html; #站点目录
index index.nginx-debian.html index.html index.htm;
apache2 安装后可以通过
a2enmod ssl
a2ensite default-ssl两条命令快速开启ssl默认配置
修改/etc/apache2/sites-available/default-ssl.conf
<IfModule mod_ssl.c>
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
ServerName xxx.com
SSLEngine on
SSLCertificateFile /etc/apache2/cert/assl1public.crt
SSLCertificateKeyFile /etc/apache2/cert/assl1.key
SSLCertificateChainFile /etc/apache2/cert/assl1chain.crt
修改配置文件里面的ssl证书路径即可,重启apache
systemctl restart apache2.service
查看443端口是否占用 https://域名即可测试