电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

nginx配置https详细过程

来源:金蝶云社区作者:金蝶2024-09-163

nginx配置https详细过程

nginx配置https详细过程

准备工作

需要先准备好你域名对应的证书和私钥,也就是cert证书和key。我部署是很常见的ng+tomcat双层配置,ng作为前端的代理,所以tomcat就不需要自己处理https,ng作为代理以http协议将请求转给tomcat处理,而后再把tomcat的输出通过SSL加密发给用户。

这种代理模式下,带来的问题就是tomcat会认为所有请求都是ng发出的,你在代码逻辑如果使用request.getScheme()等函数获取的信息会总是http,这种解决办法需要你在转发tomcat的配置一些选项proxy_set_header等信息。

该配置Demo是以客户在华为云上的一台服务器作为样例,免费证书需要通过域名备案后,到云证书管理服务中下载

img

Nginx

下载nginx自己去官网,可以wget http://nginx.org/download 对应的版本号,自己解压安装后,我们检查下是否有配置SSL模块

$ /usr/local/nginx/sbin/nginx -v
nginx version: nginx/1.10.2

如果没有看到configure arguments: --with-http_ssl_module 则需要配置SSL模块,在解压后的nginx目录(注意,不是在安装好的那个nginx目录)执行make编译命令,编译好后,在当前目录下会多出一个objs文件夹。

$ cd nginx-1.10.2
$ make

img


用新的nginx覆盖当前的安装好的nginx文件

$ cp objs/nginx /usr/local/nginx/sbin/

再次检查安装的模块 /usr/local/nginx/sbin/nginx -v,如果能看到 configure arguments: --with-http_ssl_module 则表示SSL模块已经安装

证书部署

将从华为云上下载的免费证书和秘钥通过sftp工具上传到云服务器上。可以创建一个文件夹cert专门存放,这是我当前存放证书的的路径

img


nginx.conf配置

在配置前,我们先copy一份原配置文件防止出错。然后在配置文件内新增一个server

复制代码

server {     $ 端口号,开启ssl
        listen       443 ssl;     # 域名,多个以空格分开
        server_name  xxx www.xxx.com;
        
        #charset koi8-r;

        #access_log  logs/host.access.log  main;
     # 域名证书文件存放位置
        ssl_certificate /usr/local/nginx/cert/xxx.crt;
     # 域名私钥存放位置
        ssl_certificate_key /usr/local/nginx/cert/xxx.key;
     # 缓存有效期
        ssl_session_timeout  5m;
     # 可选的加密协
        ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
     # 加密算法
        ssl_ciphers  ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
     # https加密套件,
        ssl_prefer_server_ciphers  on;

     #静态文件存放位置
        location / {
           try_files $uri $uri/ /index.html;
           #root   html;
           #index  index.html index.htm;
        }
        location ~.*\.js$ {
            root    /usr/local/nginx/html/build;
        }
        location ~.*\.css$ {
            root    /usr/local/nginx/html/build;
        }
     #tomcat 映射的服务器配置
        location  ^~/cms-manage/{
            proxy_pass http://127.0.0.1:8080;
            proxy_set_header Host $http_host;
   

nginx配置https详细过程

nginx配置https详细过程准备工作需要先准备好你域名对应的证书和私钥,也就是cert证书和key。我部署是很常见的ng+tomcat双层配置,ng作为前...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

已经是第一篇
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信