阿里云使用nginx启用https及运行springboot jar包

  1. 首先,需要在阿里云申请免费一年的ssl服务
  2. 打开管理控制台-证书服务,下载证书for nginx
  3. 在服务器Nginx的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中(一个key文件和一个pem文件)
  4. 配置服务器nginx下nginx.config
server {
        listen 443;
        server_name 你的域名;
        ssl on;     
        ssl_certificate   cert/你的证书.pem;
        ssl_certificate_key  cert/你的证书.key;
        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 / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_set_header X-NginX-Proxy true;
                //你的项目端口号
            proxy_pass http://127.0.0.1:9999/;
            proxy_redirect off;
        }
    }

spring boot pom设置

    com.xxxxxx
    xxxxxxxxxxxxxxxx
    0.0.1-SNAPSHOT
    jar


*********

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    true
                
            
        
    

在项目根目录下执行 mvn clean package打包jar,打好的包在target下,将其上传服务器的某个目录
运行项目方式

  1. java -jar xxxxxxxxxxxxxxxx.jar窗口关闭后就停止,显然不行

  2. nohup java -jar XXX.jar >temp.txt & 最后的&表示后台运行,并将console打印到temp.txt下,可通过jobs命令查看后台运行任务
    jobs
    那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
    如果想将某个作业调回前台控制,只需要 fg + 编号即可。
    fg 23
    查看某端口占用的线程的pid
    netstat -nlp |grep :9181

  3. 注册服务
    通过init.d 注册sudo ln -s /var/myapp/myapp.jar /etc/init.d/myapp,最后的那个myapp就是你要注册的服务名,这个命令实际是软连接,然后通过service myapp start|stop|restart管理就行。

上述最后一种方式是最好的,也是官方推荐的方法,但我怎么试也不行,最后用第二种方式启动了。以后再研究吧。
以上。

你可能感兴趣的:(阿里云使用nginx启用https及运行springboot jar包)