http转https访问,http访问自动转为https访问

运用场景:服务器是腾讯云的服务器,服务器是CentOS 7.X,用nginx进行客户端反向代理。域名是阿里云的域名。SSL证书是腾讯云申请的CA免费型证书。

希望达到的效果:不在证书中显示申请单位名称,只显示网站域名,网站前面添加绿色的https://... 。之前在阿里云申请的免费型证书会在域名前面显示个人(公司名称)信息,因为网站是做个人测试用,不需要在地址栏显示个人信息,所以后来选择腾讯云的ssl证书

第一步:申请腾讯云SSL证书,我这里是CA免费证书。

第二步:去阿里云域名解析,在解析列表里选择添加记录,把腾讯云中证书详情的内容添加到阿里云的解析记录中。添加完成后等待证书审核,大概需要花十分钟左右。

第三步:下载证书并解压。把证书中的.crt(证书文件)和.key(密钥文件)结尾的文件上传至服务器中。我在nginx安装的根目录中新建了一个cert文件夹,文件夹路径为/etc/nginx/cert (这个因人而异),

第四步:编辑nginx.conf配置文件,我这里是编辑default.conf文件。

 

server {
     #SSL 访问端口号为 443
     listen 443; 
     #填写绑定证书的域名
     server_name www.domain.com; 
     #启用 SSL 功能
     ssl on;
     #证书文件名称
     ssl_certificate 1_www.domain.com_bundle.crt; 
     #私钥文件名称
     ssl_certificate_key 2_www.domain.com.key; 
     ssl_session_timeout 5m;
     #请按照以下协议配置
     ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
     #请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
     ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; 
     ssl_prefer_server_ciphers on;
     location / {
        #网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
         root /var/www/www.domain.com; 
         index  index.html index.htm;
     }
 }

第五步:HTTP 自动跳转 HTTPS 的安全配置(可选)

server {
listen 443;
#填写绑定证书的域名
server_name www.domain.com; 
ssl on;
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
root /var/www/www.domain.com; 
index index.html index.htm;   
#证书文件名称
ssl_certificate  1_www.domain.com_bundle.crt; 
#私钥文件名称
ssl_certificate_key 2_www.domain.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;
location / {
   index index.html index.htm;
}
}
server {
listen 80;
#填写绑定证书的域名
server_name www.domain.com; 
#把http的域名请求转成https
rewrite ^(.*)$ https://$host$1 permanent; 
}

 这里 rewrite ^(.*) https://$host$1 permanent;    ## $host改为自己网站的域名即可

你可能感兴趣的:(http转https访问,http访问自动转为https访问)