Nginx_SSL证书配置并将http请求重定向至https

应用场景

随着网站应用的复杂性提高, 线上业务的苦恼随之而来,为应对业务上的安全问题,越来越多的企业选择 HTTPS 加密访问作为用户信息与业务安全的保障。

正巧刚刚博客去申请了阿里云的免费ssl证书,把我配置的过程记录下来,希望对大家有所帮助。

1、下载ssl证书,证书文件包含2段内容,请不要删除人和一段内容。

2、在nginx安装目录下创建ssl目录,并且将证书文件拷贝到此目录中。

3、打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到:

    #server {
    # listen 443;
    # server_name localhost;
    # ssl on;
    # ssl_certificate cert.pem;
    # ssl_certificate_key cert.key;
    # ssl_session_timeout 5m;
    # ssl_protocols SSLv2 SSLv3 TLSv1;
    # ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
    # ssl_prefer_server_ciphers on;
    # location / {
    #}
    #}
    4、将其修改为 (以下属性中ssl开头的属性与证书配置有直接关系) :
server {
    listen 443;
    server_name www.llq.fun;
    ssl on;
    root html;
    index index.html index.htm;
    ssl_certificate   ssl/1528238006050.pem;
    ssl_certificate_key  ssl/1528238006050.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 / {
        root html;
        index index.html index.htm;
    }
}
    5、保存退出,service nginx reload.
    6、在某些站点配置并监听https协议之后,则希望用户访问http的时候也跳转至https,那么需要在
nginx中将http重定向至https协议,配置如下:
     server{
     listen 80; #侦听80端口
     server_name www.llq.fun;
     location / {
     rewrite ^(.*)$ https://$server_name/$1;
     }
     if ($time_iso8601 ~ "^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})") {
     set $year $1;
     set $month $2;
     set $day $3;
     set $hour $4;
     set $minute $5;
     set $seconds $6;
     }
     access_log /data/logs/$server_name.access.log.$year$month$day;
     error_log /data/logs/$server_name.error.log;
     }

您还未添加分享代码,请到主题选项中,添加百度分享代码!

您可以选择一种方式赞助本站

支付宝转账赞助

支付宝扫一扫赞助

微信钱包扫描赞助

┊. 恋小布 。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

图片 表情