微信小程序--搭建linux服务器并部署java后端程序2021

本文介绍:如何将java后端代码部署到阿里云的以CentOS7为操作系统轻量应用服务器

前后历经一周时间搭建好服务器,成功在浏览器中访问后端代码,欣慰😁。最大的所得是:做某件事前对此事有个全局了解很重要!!!

前言:如果长期使用服务器并绑定域名以便开放访问就需要网站备案: ICP备案前准备概述

备案的几个重点,事关服务器和域名的选择

  1. 部分云服务器需购买三个月及以上(非常非常重要!!!)
  2. 域名的顶级域名已获工信部批复
  3. 域名注册商已获工信部批复

关于微信小程序的其他注意事项

  1. 请求域名在request合法域名中
  2. 基于 https 协议
  3. TLS 版本 1.2+(解决微信小程序要求的TLS版本必须大于等于1.2的问题

服务器

学生参加阿里云的开发者成长计划可免费获得一个2个月的云服务器ECS,答题后可免费续费4个月(共6个月) 阿里云开发者成长计划–学生优惠

1. 选购

  1. 各地域服务器的速度
ping 各地域服务器所对应的IP地址

在这里插入图片描述

地区服务器ip
华东 1oss-cn-hangzhou.aliyuncs.com
华东 2oss-cn-shanghai.aliyuncs.com
华北 1oss-cn-qingdao.aliyuncs.com
华北 2oss-cn-beijing.aliyuncs.com
华北 3oss-cn-zhangjiakou.aliyuncs.com
华北 5oss-cn-huhehaote.aliyuncs.com
华南 1oss-cn-shenzhen.aliyuncs.com
香港oss-cn-hongkong.aliyuncs.com
美国西部 1 (硅谷)oss-us-west-1.aliyuncs.com
美国东部 1 (弗吉尼亚)oss-us-east-1.aliyuncs.com
亚太东南 1 (新加坡)oss-ap-southeast-1.aliyuncs.com
亚太东南 2 (悉尼)oss-ap-southeast-2.aliyuncs.com
亚太东南 3 (吉隆坡)oss-ap-southeast-3.aliyuncs.com
亚太东北 1 (日本)oss-ap-northeast-1.aliyuncs.com
欧洲中部 1 (法兰克福)oss-eu-central-1.aliyuncs.com
中东东部 1 (迪拜)oss-me-east-1.aliyuncs.com
  1. 选择系统统镜像和应用镜像(轻量应用服务器)
    阿里云轻量应用服务器镜像微分系统镜像应用镜像,系统镜像是指纯净版操作系统;应用镜像是在原操作系统基础上安装了WordPress、LAMP、Node.js等应用程序。

    阿里云开发社区:阿里云轻量应用服务器系统镜像和应用镜像区别及选择
    阿里云–ECI当前支持的地域和可用区

2. 服务器基础设置

  1. 开放端口
    阿里云服务器ESC开放端口教程
    轻量应用服务器开放端口

常用端口及其作用

端口作用
8888宝塔默认端口
80http默认端口
443https默认端口
22ssh工具默认端口
3306mysql数据库默认端口
xxxx后端项目端口

二、配置服务器

1. 通过ssh工具登录服务器

ssh工具可以选择Putty、Xshell,作者选择的是Xshell。通过ssh可以远程连接服务器,操纵并配置服务器

  1. netsarang–Xshell免费下载
  2. PuTTY: a free SSH and Telnet client

使用ssh工具连接Linux服务器
ssh工具xshell软件连接linux服务器

使用Xshell可能会出现此问题,本篇文章可以解决:xshell出现WARNING!The remote SSH server rejected X11 forwarding request

2. 配置开发环境

2.1 宝塔面板配置环境

首先安装宝塔面板,以方便管理服务器
阿里云ECS服务器安装宝塔BT面板
在这里插入图片描述
一定要根据服务器中的操作系统来选择对应的安装命令!宝塔Linux面板命令(安装宝塔命令)

2.2 进入宝塔面板

安装好宝塔后,会显示外网面板地址,在浏览器中访问,并输入提供的用户名和密码即可

2.3 在宝塔的配置开发环境

首次进入宝塔面板,会弹出选择LNMP和LAMP,这里需根据后端实际的开发环境来选择响应的软件和版本,安装方式选极速安装就行(还需后续配置,以访问后端接口)

作者只安装Nginx、jdk1.8;作者需求是:在CentOS7上运行后端java项目;设计技术:SpringBootMyBatis。因为用springboot开发出来的jar包,已经内置了tomcat。所以我们不用再CentOS中部署tomcat环境了,只需要把xx.jar这个文件上传到服务器,然后用java命令启动即可。具体操作将在此部分讲解七、部署后端项目

作者在宝塔中只安装了Nginx1.18,而jdk在宝塔中是和tomcat绑定的,因只需要jdk,所以作者通过命令行的方式在ssh工具中单独安装并配置环境变量

2. 命令行配置环境

使用命令行(ssh工具–Xshell/putty)配置环境比较麻烦,需要对Linux命令较为了解
Linux基本命令

按键/命令作用
Insert编辑状态
Esc退出编辑
:wq保存并退出
cd切换路径
ls显示指定工作目录下之内容
cat /proc/version查看centos系统版本信息
lsof -i :portnumber查看端口占用情况,#portnumber要用具体的端口号代替

查看centos操作系统的位数

三、选购域名

选购域名后需要实名认证
选购网站:万网
活动:一元选购域名
解析域名
如果只能访问不带www的域名,那么在域名解析中需要检查主机记录是否有@www
在这里插入图片描述

域名加了www无法访问,不加可以访问,为什么

四、站点管理–宝塔

1. 添加站点

通过宝塔添加站点
在这里插入图片描述

2. 添加域名

添加能通过浏览器访问的域名。一般要添加带www的和不带www的域名,以便能通过浏览器访问到两者
在这里插入图片描述

3. 安装证书

暂不操作,选购证书后,见五、SSL证书安装证书部分

五、SSL证书

SSL证书是什么:网站安装SSL证书后,使用https加密协议访问网站,可激活客户端浏览器到网站服务器之间的"SSL加密通道"(SSL协议),实现高强度双向加密传输,防止传输数据被泄露或篡改。
SSL证书的作用

1. 选购

阿里云 SSL证书 选购页面
2020阿里云免费SSL证书申请方法流程(图文教程)

2. 安装证书

  1. 通过命令行在Nginx服务器上安装证书
    在Nginx(或Tengine)服务器上安装证书–命令行
  2. 通过宝塔在Nginx服务器上安装证书
    宝塔面板 SSL 证书安装部署

首先在网站菜单栏下添加站点,在设置中选择SSL–>其他证书,将下载的ssl证书的指定文件复制放到对应的框中,在证书夹中点击部署
在这里插入图片描述

六、域名备案

2016年备案大体流程(可参考)
关于域名备案的几个困惑点:

  1. 备案是将网站主办人的资料、网站的资料在工信部作登记,目的是管控网络空间
  2. 备案一般得半个月,不同省份效率不同,请尽早备案
  3. 备案是免费的
  4. 可以跨省备案,如果不在原省份(身份证上的省份)备案可能需要提供居住证
  5. 网站名字很重要,填不好可能会被打会

在阿里云备案填写信息的过程中有任何问题,可参考阿里云备案首页的常见问题,能解决大部分问题–阿里云备案
在这里插入图片描述

七、部署后端项目

部署java项目的大致流程了解:java项目怎么部署到linux服务器

1. 打jar包

作者使用maven中的package进行打包

可参考此阅读量较多的文章(作者未进行测试):IDEA+Maven 打jar包

2. 上传jar包到服务器

使用支持FTP协议的工具,如Xftp、FileZilla

使用Xftp上传文件到Linux服务器

3. 配置数据库

3.1 服务器的数据库中创建表

使用ssh工具访问数据库,

create database database_name;
use database_name;
source xx.sql

配置数据库的关键点:

  1. 设置服务器的访问路径、端口
  2. 服务器访问端口须在服务器的安全组防火墙中开放
  3. 建议设置远程访问服务器的数据库以便操作
4. 服务器部署jar包
  1. 进入到jar包所在文件夹:cd jar包所在目录
  2. 输入命令:java -jar xxx.jar
  3. 在浏览器中输入url并访问
jar包后台运行

如按照上述命令操作,在退出ssh工具,就无法在服务器访问,如需使jar包在后台长期运行,任何时间能被浏览器访问,则需按一下步骤操作

输入命令:nohup java -jar xxx.jar &
输入nohup命令之后会给出提示:nohup: ignoring input and appending output to ‘nohup.out’,这是正常提示,直接打回车就可以。同时,会在jar的同级目录下生成nohup.out文件
在这里插入图片描述
终止jar包运行

  1. 查看进程:ps -ef|grep java
  2. 终止进程:kill -9 进程号

Linux启动与停止jar包运行

八、浏览器中访问后端接口

1. 配置nginx

以下配置nginx借助于宝塔面板

设置已添加的站点,修改配置文件以下部分:

  1. ssl证书(ssl_certificate)
    将服务器上的ssl证书的路径写到配置文件里。如在服务器根目录下新建cert文件夹,将证书.pem.key存放其中。
    在这里插入图片描述
  2. 设置location域
    server域中添加一个location域中添加访问路径。
    结合上图中的server_name理解:当在浏览器地址栏中访问server_name中的域名,nginx将自动转发到后端项目端口

关于nginx的反向代理: Nginx配置——反向代理
详解 nginx 配置文件及构建 web 虚拟主机
nginx配置文件nginx.conf详细讲解

在这里插入图片描述


九、补充问题

上文中操作过程中可能存在的问题

  1. 清空缓存
    浏览器访问目标路径失败后,需清除缓存再输入url访问,以避免浏览器显示之前的错误信息
    1. ctrl+shift+delete
    2. 按F12进开发者模式+右键单击浏览器左上角的刷新按钮+选择清空缓存并硬刷新
      在这里插入图片描述


本文汇集作者在搭建服务器时遇到的种种问题,并结合已有文章整理而成,希望能为大家节省时间,少走弯路。如果大家有任何问题或补充欢迎留言!

  • 5
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值