Springboot项目部署后给接口配置https协议

本文介绍如何通过四个简单步骤配置Nginx服务器支持HTTPS:定位Nginx配置文件、申请SSL证书、修改配置文件并重启Nginx。适用于希望为小程序提供安全接口的开发者。

目录

一、找到nginx.conf文件

二、申请ssl证书

三、修改nginx.conf进行配置

四、重启nginx使配置文件生效 

开发小程序往往需要配置有https的接口,我们就需要进行配置,这里只记录简单的配置步骤。

一、找到nginx.conf文件

这个就看你自己当时安装的根路径了,我的安装路径在/etc/nginx,nginx.conf文件就在这里。只要你能找到这个配置文件即可,注:并不是源文件文件夹下的,一定是安装路径下的。等会我们就需要修改这个文件。如下:

二、申请ssl证书

去到你的服务器的官网,为你的域名申请证书。我的是阿里云的,就进入这个网址:https://yundun.console.aliyun.com/?spm=5176.2020520101securitygroupdetail.top-nav.dbutton.35614df5bNxFoj&p=cas#/overview/cn-hangzhou

 申请这个免费版即可。点击已购买证书后面的下载,会得到一个压缩包,压缩后:

 把这两个文件拷贝到nginx安装路径下去(与nginx.conf同级或自己新建文件夹),我这里是与nginx.conf同级

三、修改nginx.conf进行配置

nginx.conf文件里的新增部分

  #大部分是固定写法,80端口转发到443端口,注释内容跟下面443的注释一样。
  server {
        listen       80;
        server_name  www.xxxxx.com;
        rewrite ^(.*)$ https://${server_name}$1 permanent;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            proxy_pass http://www.xxxxx.com:1234;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Port $server_port;
            
        }
}

    #只用修改打了注释的地方即可。
     server {
        listen       443;
        #server_name写你要进行https配置的域名
        server_name  www.xxxxx.com;
        ssl on;

        #这里是配置ssl证书的位置,我这里是同级,所以不写文件夹,若你新建了文件夹
        #比如新建为etrc    那就写 etrc/6984381_www.xxxxx.com.pem;
        ssl_certificate      6984381_www.xxxxx.com.pem;
        ssl_certificate_key  6984381_www.xxxxx.com.key;
        #ssl_session_cache    shared:SSL:1m;
        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 / {
       #这里配置访问的ip + 端口(这里就是针对某一个项目了,若有多个项目使用这个域名,就再配置一个
            proxy_pass http://www.xxxxx.com:1234;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header X-Forwarded-Port $server_port;
        }
    }

这样,配置文件也就修改好了,接下来重启nginx让conf文件生效。

四、重启nginx使配置文件生效 

重启代码:

 nginx -s reload

### 部署 Spring Boot 前后端分离项目的流程 #### 1. 后端部署 后端通常基于 Spring Boot 构建,可以打包成可执行的 JAR 文件并运行于服务器上。 - **构建项目**: 使用 Maven 或 Gradle 将项目构建成一个独立的 JAR 文件。如果使用的是 Maven,则可以通过命令 `mvn clean package` 来完成编译和打包过程[^2]。 ```bash mvn clean package -DskipTests ``` 上述命令会跳过测试阶段以加快构建速度。 - **上传文件至服务器**: 可通过 FTP 工具或者 SCP 命令将生成的 JAR 文件传输到目标服务器中。 ```bash scp target/your-spring-boot-app.jar user@remote-server:/path/to/deploy/ ``` - **启动服务**: 登录远程服务器并通过以下命令来启动应用: ```bash nohup java -jar your-spring-boot-app.jar > app.log & ``` 此命令会在后台运行程序并将日志输出重定向到指定的日志文件中。 #### 2. 前端部署 前端部分一般由 Vue.js 或 React 等框架搭建而成,在本案例中提到的是 Vue 技术栈[^1]。 - **构建生产版本**: 利用 npm 脚本来创建优化过的静态资源包。进入前端目录下执行如下脚本: ```bash npm run build ``` 这一步骤将会把所有的 HTML/CSS/JS 文件压缩处理好以便上线发布。 - **配置 Web Server**: 对 Nginx 进行设置使其能够托管这些静态页面以及代理 API 请求给后端接口地址。下面给出一段简单的 nginx.conf 示例代码片段用于说明如何实现反向代理功能。 ```nginx server { listen 80; server_name localhost; location /api/ { proxy_pass http://localhost:8080/; } location / { root html/dist; # vue 打包后的路径 index index.html; } } ``` 以上配置实现了当访问 `/api/*` 地址时请求会被转发到本地监听在 8080 端口上的 springboot 应用;而其他任何 URL 则返回 dist 文件夹中的内容作为响应数据。 #### 总结 整个过程中需要注意保持前后两端之间的通信正常运作,比如跨域问题解决办法可以在 springboot 中添加 CORS 支持特性或是借助 web server 完成内部网络调用关系建立等工作。另外还需要考虑安全性因素如 HTTPS 协议启用等方面的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值