目录
简介
课设作业要求,不熟花了时间又忘了,还是记下来吧
一、软件介绍
Xshell、Xftp、宝塔面板
Xshell
网页版的控制台可能不是很方便,因此我们可以用其它软件连接服务器终端,比如xftp、Xshell、FinalXhell,连接的方式很简单。
Xshell :Xshell是一个功能强大的终端模拟器,支持SSH,SFTP、TELNET、远程登录命令连接。
Xftp :Xftp是一个灵活和轻量级SFTP / FTP客户端用户需要安全地通过网络传输文件。它提供了强大的功能,如直接编辑多个窗格,文件夹同步,他们支持,服务器到服务器转移和第三方编辑器集成。
宝塔面板
宝塔面板是百塔网络科技有限公司研发的服务器管理工具,宝塔面板(BT Panel/aaPanel)是一个功能强大且终身免费的Linux服务器管理软件,可一键部署LAMP/LNMP/Tomcat/Node.js、网站、数据库、FTP、SSL。对于新手来说,优点很多,非常适合小白站长使用。很多人安装后让云服务器管理部署变得简单,功能也比较全面。
1、页面简单易操控
在宝塔 Linux 面板中,我们可以看到网站、FTP、数据库都是傻瓜式的创建方法,极大的简化了创建过程的繁琐,也避免了一些错误的发生。
2、一键配置环境
登陆进去宝塔面板后,一般来说,推荐安装 LAMP,LAMP 就是 linux + apache + mysql +php。
Nginx 性能稳定、功能丰富、运维简单,相比 Apache 来说使用资源更小,更加灵活。软件安装速度很快,而且中间你也不用关心报错等等。
3、可视化的监控系统
不管是云主机的 CPU、内存、还是磁盘占用空间详情,都可以一目了然。在下面可以监控网络流量的使用情况,左边是一些软件,你可以随时停止、开启、重载配置、查看日志、更改版本等
一个非常好用的模块就是可以定时自动执行一些自己设定的任务,比如执行一些 shell 脚本、备份网站、备份数据库、日志切割、释放内存、访问 URL。还有一个就是可以远程管理文件,比如上传压缩包、在线解压压缩、远程下载等,所以,宝塔 linux 面板使用非常简单。
二、开始搭建
购买云服务器
这就直接放链接了呀(包括了Xshell的远程连接步骤)学生版便宜 但听说还有可以白嫖
安装宝塔面板
如果大家系统是centos7以下的大家还是乖乖使用宝塔5.9的安装脚本(Centos官方已宣布在2020年停止对Centos6的维护更新,推荐大家装系统直接安装centos7)
宝塔6.9版本已经很稳定了,推荐大家直接安装6.9版本(注意:宝塔linux6.0版本是基于centos7开发的,务必使用centos7.x 系统)
命令行输入:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
这里如果安装不成功是因为服务器不够纯洁!!哈哈 然后接下来不想写看链接
安装完成就可以用外网地址登录,但是过一段时间外网就登不进去了,那么就可以在服务器上输入
/etc/init.d/bt default
然后就又可以用外网地址了。
配置环境的话我选的第一个 不过也可以试着用命令行敲 后面个版本地址就会比较清楚
进入面板后需要去注册一个宝塔官网账号与面板绑定
建立站点
点击面板网站添加站点
这里由于我们本地有数据库就不用建立了,然后ftp也没用。
而且由于未知原因。我的宝塔面板用公网IP下设端口建立站点不能访问,可以看其他教程,反正教程可以,我不行。没有域名搭多个网站
然后在网站目录下面更改你的前端打包文件
打包后端文件
打包之前改一下数据库。找到resource目录下的application
port端口是后端在服务器运行的端口,需要在安全组开放,这里改一下url,localhost 改成你的服务器IP地址,然后username,password是自己本地的就好了,不过也可以在宝塔上面建立,看自己。这里我主要将在宝塔上面建立的。
找到数据库,点击添加数据库,
剩下的随便填,填完后的username和password就写在前面说的对应位置,开始打包
后端打包呢涉及到项目maven工程的生命周期,最主要的问题就是setting.xml的配置
再user setting files里面去c盘的.m2中去找到setting.xml文件,没有的话就到下载的apache-maven里面的conf目录下找,找到了复制到.m2去,然后mavenhomepath选择Bundled
点击右侧的maven,进行maven生命周期,clean,compile,package打包出来
在target文件夹下会有一个jar包,emmm这里我不知道为啥不见了,我再找张图片,
好的,接下就是把后端打包的jar包放在服务器上,找个文件夹
打开xshell终端,cd到该目录下
执行nohup java运行后端,会产生一个nohup.out文件
nohup java -jar demo-0.0.1-SNAPSHOT.jar &
执行完成后ctrl+c弹出,执行tail -n +1 nohup.out查看执行代码情况,根据情况更改后端报错。运行后可以通过postman测试后端接口,至于怎么用看自己操作了
至此,前端基本完成(有一点很重要啊,就是你后端用的端口号要在安全组放行,宝塔面板h和云服务器控制台都要放行。)放行教程官网有的。
打包前端文件
这里注意,前端要改两个地方,第一个是关于跨域配置的反向代理,第二个是axios的配置
跨域的反向代理,把target改成自己服务器ip以及后端运行的端口号,所以看到这里了是吧,没错我得把后端先写了。注意:这里只改target,另外的不用动
改完反向代理的文件,在找到你封装的request请求,把基础baseURL改成服务器ip+后端端口号,然后就通过下面的代码进行打包
npm run build
打包完成后又产生一个dist文件夹,把它放在服务器上去,然后就用宝塔面板那一套建站流程就ok了。
主要会产生的问题是刷新页面和,加入在站点的配置文件中加入
try_files $uri $uri/ /index.html;
这里提一下,宝塔可以一个IP部署多个网站有视频我放了链接自己看一下。
就可以解决刷新报错404
还存在的405问题是涉及到静态资源,不能再apache nginx上面获得吧,这个网上的说法是在站点配置文件上加
location /
{
root /www/client/domain;
index index.shtml index.html;
error_page 405 =200 /index.shtml;
}
或
location ~* /*\.shtml$
{
root /www/client/$domain;
index index.shtml index.html;
error_page 405 =200 http://$domain$request_uri;
}
这样基本上前后端就配好了,最后剩下数据库。(所以我刚刚后端好像没讲完,回头写)
数据库配置
数据库配置在前面,然后就可以开始运行项目了
项目运行
浏览器输入ip加前端端口号。
总结
后面还有ssl证书申请,域名备案好多东西,再去找资料吧,面向csdn