首页 服务器技术 nginx

如何使网站支持https访问?nginx中配置https证书



购买SSL证书

要想使用https访问你的网址,首先得拥有颁发的SSL证书。我使用的是免费版,有效期为一年,过期后再重新申请。

申请SSL证书

购买后,可在搜索框输入证书关键字进入到控制台。

点击证书申请,按照提示填写完相关信息就会给你签发了。

证书下载

证书签发完成后如下图所示。点击下载。在右侧选择下载对应服务器的压缩包。

此处我的是nginx服务器,其他服务器类型自行选择

部署SSL证书

在已签发的证书列表中,点击部署,选择负债均衡,全选所有节点一键部署。

nginx配置https访问

  1. 将下载的证书压缩包解压出来,压缩包中有两个文件1234567_baidu.com.pem和1234567_baidu.com.key。
  2. 将上面的两个文件拷贝到服务器的/usr/local/nginx/ssl/路径下(拷贝到其他路径时,需修改4中的对应路径)
  3. 连接服务器的控制台,修改nginx的配置文件。vi /etc/nginx/nginx.conf
  4. 增加一个server监听
    server {
        listen       443 ssl http2 default_server;
        listen       [::]:443 ssl http2 default_server;
        server_name  www.baidu.com;#对应域名
        root         /usr/share/nginx/html;
        ssl    on;
        ssl_certificate "/usr/local/nginx/ssl/1234567_baidu.com.pem"; # 证书pem的文件目录
        ssl_certificate_key "/usr/local/nginx/ssl/1234567_baidu.com.key"; # 证书key的文件目录
        ssl_session_cache shared:SSL:1m;
        ssl_session_timeout  10m;
        ssl_ciphers HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers on;
        include /etc/nginx/default.d/*.conf;
        error_page 500 502 503 504 /50x.html;
         location = /50x.html 
        }

    }

修改完成后执行 nginx -s reload重新加载nginx配置。

http自动请求到https访问网站

  • 完成以上配置。输入https可以正常访问网站了,如果要将http请求的网站变成https,这里只需在nginx的配置中再增加一项。
  • 修改nginx配置文件。vi /etc/nginx/nginx.conf
  • 找到配置监听80端口的server,增加这行代码rewrite ^(.*) https://$host$1 permanent;
  • 此时对http的请求已配置完了,不要忘了,修改完成后执行 nginx -s reload重新加载nginx配置。
相关推荐