IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> SpringBoot 个人博客项目部署上线阿里云服务器,jar包部署到云服务器上,同时设置nginx域名解析,ssl配置等等 -> 正文阅读

[PHP知识库]SpringBoot 个人博客项目部署上线阿里云服务器,jar包部署到云服务器上,同时设置nginx域名解析,ssl配置等等

SpringBoot 个人博客项目部署上线阿里云服务器,jar包部署到云服务器上,同时设置nginx域名解析,ssl配置等等

大家好,我是一位在java学习圈中不愿意透露姓名并苟且偷生的小学员,如果文章有错误之处,还望海涵,欢迎多多指正

前言

这不前些天参考追梦写的个人博客的前端页面(也就是html),然后上手在自己的idea上码了后端的代码(用到了springboot,mybatis,thymeleaf,logback日志,pagehelper分页插件等技术),前端进行了修改以及改进(用到了HTML,css,JavaScript,jQuery,semantic-ui(可以理解为一个提前写好的css库)),整体而言是一个不错的炼手项目(同时内嵌另一个利用爬虫爬取疫情数据,通过echarts来实现数据可视化,实时展示疫情的动态的项目),具体代码请移步代码地址
本项目已部署完毕,成品请参考:成品地址,由于关于页内嵌音频首次访问速度较慢请谅解

第 0 步:代码通过maven工具package打成jar包

双击package打包,打包完成后即可在target文件夹中找到对应的jar包
在这里插入图片描述

第 1 步:购买阿里云服务器

这里我买的是ECS突发性能型t6,买了一年98左右(首次购买的价格),相比于其他的服务器,阿里云的服务器价格真心不错
在这里插入图片描述
点击购买来到这,我买的是华东1(杭州),操作系统是centos 8的,其他的配置默认即可
在这里插入图片描述
购买成功后即可在控制台的实例中看到自己购买的阿里云服务器,点击更多然后选择密码/密匙,开始重置实例密码,然后选择网络与安全组,点击安全组配置,点击配置规则,有手动添加和自动添加两种,添加你的个人博客需要访问的端口,以及MySQL数据库的3306端口
在这里插入图片描述

第 2 步:通过xshell(可以去搜索官网下载,一个代替linux黑框框的客户端)登录访问我们的云服务器,账号默认是root,密码是刚才我们配置的密码

登录后使用 Xftp 上传我们的jar包,我是上传到 /opt/ 该文件夹下,通过java -jar jar包全名,运行该jar,如果没有执行权限需要先执行 chmod +x jar包全名(给这个jar包赋予执行权限)也可通过 nohup java -jar jar包全名 &(在后台执行)
然后就能通过 公网ip:port/home 来访问我们的项目了,是不是感觉很高大尚,厉害的在后面呢。

第 3 步:注册域名(这里我花费了29),域名实名认证,网站备案(我以为要很久,居然三天就备好了)

备案完成后将工信部发给你的备案号添加至网站的底部,然后能点击跳转至工信部的查询页面

第 4 步:安装nginx,配置nginx.conf

登录Xshell,安装nginx,安装完成后找到nginx.conf配置文件,我的配置如下:

#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


events {
    worker_connections  1024;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;
    
    upstream myserver{
        # server列表的地址和端口
        server 公网ip:port;  
    }

    server {
        listen       80;
        server_name  域名;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            #root   html;
            #index  index.html index.htm;
            proxy_pass http://myserver/;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        #location ~ \.php$ {
        #    root           html;
        #    fastcgi_pass   127.0.0.1:9000;
        #    fastcgi_index  index.php;
        #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        #    include        fastcgi_params;
        #}

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        #location ~ /\.ht {
        #    deny  all;
        #}
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    
    server {
        listen       443 ssl;
        server_name  域名;

        ssl_certificate      /home/cert/pem文件名;
        ssl_certificate_key  /home/cert/key文件名;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            #root   html;
            #index  index.html index.htm;
            proxy_pass http://myserver;
        }
    }

}

第 5 步:购买阿里云提供的免费20个ssl证书,0元(每年都有20个)

当然免费的安全性肯定没付费的好,但对我来说足够了
配置好证书后点击下载nginx版本的证书,将下载后的压缩包解压,里面的两个文件上传至服务器,在nginx.conf中进行配置,我是放在了 /home/cert/ 下
最后重启nginx或者重新加载nginx.conf(通过在nginx的sbin目录下使用命令 ./nginx -s reload),我的nginx版本是最新的稳定版 1.20.1

最后直接访问域名即可

在这里插入图片描述

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2021-09-03 11:40:27  更:2021-09-03 11:41:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 10:13:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码