项目的部署-让网络上的人都能访问你的网站
【JavaEE】项目的部署-让网络上的人都能访问你的网站
1. 搭建环境
我们的博客系统或者表白墙,需要依靠哪些软件/程序呢?
- IDEA?
- 错误,java的特点就是兼容性高,一处编译到处运行~
- 只要你有 jdk,就可以编译和运行~
- Tomcat
- yes
- mysql
- yes
其他的工具包/库/依赖,通过网络就行了,或者跟项目在一起,所以不必在意~
1.1 jdk
在yum里下载即可
- ==yum > Linux的包管理器
注意网络通畅!
devel 代表 development,开发
yum install java-1.8.0-openjdk-devel.x86_64
- 如果运行不了,可能是有另外一个yum进程在运行,得把对应的进程干掉/把提示的文件删掉
一段时间后,加载完会提示:
检查jdk是否安装好:javac
1.2 Tomcat
yum上安装Tomcat,存在一定的问题,Centos7默认是tomcat7,因为yum上默认的软件包可能比较老,而我们要的是8.5~
所以我们选择,Tomcat我们手动安装即可
1.2.1 上传tomcat程序
一定保证jdk装好后,再装Tomcat,Tomcat是个java程序,所以必须要有jdk!
部署压缩包所要的两个东西,要通过yum安装一下
- lrzsz,可以拖动到XShell命令行zmode功能进行安装
- unzip,解压缩
yum install lrzsz
yum install unzip
拖动到命令行就会在“当前目录”上传并且解压缩
- 没有自动解压缩,就这样:
unzip 压缩包名.zip
- 我创建了tomcat的目录,然后通过拖动到命令行的方式下载在这个目录里
1.2.2 给启动脚本加上可执行权限
进入Tomcat的bin目录里
.sh后缀的文件,就是给Linux使用的启动脚本,默认情况下这些启动脚本没有可执行权限,也就是说目前启动不了,我们需要赋予他们权限
chmod +x *.sh
- 白色变成绿色,代表拥有可执行权限~
1.2.3 启动Tomcat
sh startup.sh
要保证Tomcat的端口有没有被占用~
用ps和netstat去查看~
- 保证8080和8005没有被占用~
Tomcat启动后,自动配置环境变量~
可以用你的ip+:8080去访问Tomcat的欢迎页面:
- 但是这里你可能没有访问到,这是正常的
不是因为你Tomcat没有启动成功,而是因为你的云服务器的防火墙不允许8080端口的流量通过!
1.2.4 让服务器运行8080端口的流量通过
每个云服务器的操作都比较类似,以阿里云为例:
- 就不以图片演示了,怕混淆你,因为每个人的页面可能不一样
- 是在不行你问一下客服小姐姐
要在阿里云中打开云服务器的防火墙并允许8080端口的流量通过,你可以按照以下步骤进行操作:
- 登录阿里云控制台(https://cn.aliyun.com/)。
- 导航到云服务器ECS的管理页面。
- 在左侧导航栏中选择"网络与安全",然后点击"安全组"。
- 找到需要修改的安全组,点击其名称进入安全组配置页面。
- 在安全组配置页面的"规则"选项卡中,点击"添加安全组规则"。
- 在弹出的窗口中,选择以下配置:
- 方向:入方向(用于接收请求)
- 规则:自定义TCP规则
- 端口范围:8080/8080
- 授权对象:0.0.0.0/0(表示允许任何IP访问)或指定特定IP范围
- 点击"确定"保存设置。
- 确认添加规则后,8080端口将在该安全组中打开,允许外部访问。
1.3 MySQL
重新启动数据库:
sudo systemctl restart mariadb
- 强烈建议去看这一篇文章,很详细很详细!
- 按照这些走就够了~
Maridb与MySQL是两个相关的数据库管理系统。 MariaDB是由MySQL的创始人之一开发的一个分支,它保留了与MySQL兼容的特性,并且在功能和性能上进行了增强。
在技术上,MariaDB与MySQL非常相似。 因此,大多数使用MySQL的应用程序可以无缝地迁移到MariaDB上。它们使用相同的SQL语法,并且具有类似的命令和函数。只需对代码进行一些微调,就可以在MariaDB上正常运行。
MariaDB的发展目标是成为一个开源、免费的替代MySQL。 尽管两者有一些不同之处,但MariaDB仍然兼容MySQL,并且可以轻松进行数据迁移。
总之,MariaDB是一个与MySQL兼容且具有增强功能和性能的数据库管理系统。如果您对MySQL熟悉,那么使用MariaDB应该是相对简单的。
我们的sql代码在这个里面也是能很好的运行的~
- 只不过MariaDB对大小写比较敏感
在XShell中,输入:
mysql
或者
mysql -uroot
即可进入数据库,之后的操作就跟我们的数据库一致了~
这个none的位置会随着你use数据库而变化~
退出数据库操作页面的话,使用快捷键:Ctrl D
默认是没有密码的,想要设置密码的同学可以去查阅资料然后设置~
2. 代码修改
2.1 修改数据库密码
这一步很重要,要保证每一条数据库操作都要把密码修改成空字符串!
- 不然程序会出错!
2.2 保证端口号在Linux上的mysql保持一致
这里3306跟之前查到的一致~
2.3 修改文件路径
所有文件路径有关的代码,都要检查路径在Linux上是否正确
表白墙代码中的保存文件操作,用到的代码就错误,得更改成这样:
- 这是一个绝对路径的写法,因为我不能保证你的Linux设备Tomcat运行的时候的相对路径
- 这个绝对路径要根据你的Linux的Tomcat位置而定,但是不变的是,要放在webapps的项目里面~
3. 数据库的建库建表
我们的数据库现在全空着,我们得让里面有我们代码所依赖的数据库和对应的表
- 我们之前写的.sql文件,起作用了!
- 不过可能有些代码不注意大小写区分,所以可能会在这里出错,要调整一下!
进入数据库操作页面,把代码复制进去就行了~
4. 打包部署
4.1 pom.xml的设置
- 打的包是jar包,我们要改为war包
- 设置打的包的名字
4.2 打包
- 双击package
在文件管理器打开:
4.3 部署
进入webapps目录:
检查一下这个项目是否存在:
- 存在一定要删除然后再导入
- 存在,那么我就删除(Tomcat自动解压缩,所以不用自己解压缩了)
不删除就会这样
这样就相当于白上传了
然后直接把war包拖进去:
这样就大功告成了~
- 记得保持网络通畅
4.4 访问网站
格式:外网ip地址:8080/项目名/页面名.html
- 不保证我的网站可持续访问!
5. 问题探测
- 抓包,判断是前端还是后端的问题
- 修改代码后务必要重新打包和部署
- 所以平时用IDEA开发比较方便
- 并且我们的机器去Tomcat和云服务器不冲突,所以我们可以测完在重新上线~
- 如果是后端问题,那就要去看tomcat的日志:
文章到此结束!谢谢观看
可以叫我 小马,我可能写的不好或者有错误,但是一起加油鸭🦆!我们终于做成了网站了!
- 表白墙源码:showLove
- 博客系统源码:blog_system