当前位置: 首页 > 科技观察

Nginx服务器如何配置启用Https

时间:2023-03-21 18:57:31 科技观察

如何在Nginx服务器上配置和启用Https转载此文,请联系某程式你好公众号。在之前的鱼鱼字微信小程序中,需要调用自己的服务端api,但是服务端配置url必须是HTTPS,所以需要配置nginx的SSL模块支持HTTPS访问,即要求通过https://美国广播公司。SSL的英文名称是SecureSocketLayer,安全套接字层。SSL是一种数字证书,它使用SSL协议在浏览器和网络服务器之间建立安全通道,使数据信息在客户端和服务器之间安全传输。1、配置ssl模块,首先查看nginx是否安装了http_ssl_module模块,默认不会安装。下载nginx安装包并解压。配置ssl模块。./configure--prefix=/usr/local/nginx--with-http_ssl_module使用make命令编译(使用makeinstall会重新安装nginx),当前目录下会出现objs文件夹。用新的nginx文件覆盖当前的nginx文件。再次检查已安装的模块(配置参数:--with-http_ssl_module表示已安装ssl模块)。2、配置部署ssl证书,可以到阿里云或腾讯云申请免费证书。一般提供域名验证后即可申请免费证书。申请结果后,下载对应的证书文件(我们选择nginx证书)。将申请的ssl证书文件压缩包下载到centos服务器目录下并解压(这里使用的.crt文件和.key文件,文件名可以更改)。3、Nginx配置文件设置打开Nginx安装目录下conf目录下的nginx.conf文件,找到如下部分:#HTTPSserver##server{#listen443;#server_namelocalhost;#sslon;#ssl_certificatecert.pem;#ssl_certificate_keycert.key;#ssl_session_timeout5m;#ssl_protocolsSSLv2SSLv3TLSv1;#ssl_ciphersALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;#ssl_prefer_server_cipherson;#location/{###}#}将其更改为:server{listen443;server_namelocalhost;ssl_certificatecert/证书名称.pem;ssl_certificate_keycert/证书名称.key;ssl_session_cacheshared:SSL:1m;ssl_session_timeout5m;ssl_ciphersHIGH:!aNULL:!MD5ssl_protocolsTLSv1TLSv1.1TLSv1.2;htmlindex.htm;}}添加反向代理指向我们的restfulapi地址location/wx/{proxy_pass"http://...:3000";proxy_redirectdefault;}在80端口的服务器配置节点添加权重定向设置使得从80端口访问的http请求跳转到我们上面刚刚配置的https地址。重写^(.*)$https://***:443/$1永久;最后重启nginx服务器使配置生效。通过https访问您的站点以测试站点证书的安装和配置。在浏览器中输入https://***.com,若能正确访问则配置成功。