nginx这么牛,想配置下https试试? 1.下载ssl证书 小编是腾讯云的服务器,可以申请到免费的CA证书,需要绑定到对应的域名上。申请OK后下载下来,可以看到目录结构是这样: 不同的应用服务器的证书不一样。我们使用nginx的。 将nginx目录下的两个证书 上传的服务器的指定目录中。 2.修改nginx配置文件 upstream myapp { server 139.199.97.71:8080 weight=1 max_fails=2 fail_timeout=30s; server 139.199.16.176:8080 weight=1 max_fails=2 fail_timeout=30s;}server{ listen 443; server_name www.; ssl on; ssl_certificate /root/key/1_www._bundle.crt; ssl_certificate_key /root/key/2_www..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 / { proxy_pass http://myapp; index index.html index.jsp; }} 重启nginx即可。 说明: 配置文件参数说明 listen 443 SSL访问端口号为443 ssl on 启用SSL功能s sl_certificate 证书文件 ssl_certificate_key私钥文件 ssl_protocols使用的协议 ssl_ciphers配置加密套件,写法遵循openssl标准 重启的时候如果出现nginx: [emerg] unknown directive 'ssl' in /usr/local/nginx/conf/nginx.con错误需要做下面步骤: 到解压的nginx目录下 ./configure --with-http_ssl_module 当执行上面语句,出现./configure: error: SSL modules require the OpenSSL library. 用yum -y install openssl openssl-devel 再执行./configure 重新执行./configure --with-http_ssl_module make ,make install 启动nginx即可。 访问域名 https配置完成 3.让服务器自动把http的请求重定向到https 修改配置 server { listen 80; server_name www.; location = / { rewrite ^(.*) https://www./$1 permanent; }} 重启nginx即可。 |
|