怎样linux部署web应用程序,Linux系统部署WEB项目(2020最新最详细)
2020最新Linux系统发行版ContOS7演示部署WEB项目
为防止操作权限不足,建议切换root用户,当然如果你对Linux命令熟悉,能够自主完成权限更新操作,可以不考虑此推荐。
更多命令学习推荐:
本次项目开发环境:
MySQL5.7、JDK1.8、Maven3.6、Tomcat9.x、SSM+Redis+JavaMal+Quartz
本次项目部署环境:
Linux(CentOS7)、MySQL5.7、JDK1.8、Tomcat9.x、Redis6.x
本次项目部署前环境搭建:
1、项目部署前准备工作
A、数据库准备
本地主机导出数据库文件:xxx.sql。
DOS命令(Window键+R键快速打开运行,输入CMD回车,键入下面的命令执行)
1 ####格式:mysqldump -u用户名 -p密码 --databases 库名>导出文件地址+文件名.sql2 C:\Users\XIAOSAGEER>mysqldump -uroot -proot --databases t_4s_demo>D:/demo.sql
导出方式有很多,更多方式请自己查阅资料或参考我的博客首页,学习有关SQL命令操作。
启动并连接Linux服务。
使用XFTP工具,将xxx.sql文件上传至Linux系统/home/xsge目录中。(保存地址并非固定,建议放置在当前用户目录下)
切换root账户。
登录MySQL。
创建数据库demo。
导入数据库信息。
1 ####切换root账户2 [xsge@localhost ~]$ su3 密码:4 ####登录MySQL:-u用户名 -p密码5 [root@localhost ~]# mysql -uxsge -p6 password:7 Type 'help;' or '\h' for help. Type '\c'to clear the current input statement.8
9 ####登录成功,查看所有库10 mysql>show databases; ####查看所有库11 +------------------------+
12 | Database |
13 +------------------------+
14 | information_schema |
15 | mysql |
16 | performance_schema |
17 | sys |
18 +------------------------+
19 ####创建库:demo(通常库名与本地SQL库名称一致)20 mysql>create database demo;21
22 ####导入SQL数据23 mysql> source /home/xsge/downfiles/demo.sql24 --------省略ok----------
25 mysql>show databases; #查看数据库26 +------------------------+
27 | Database |
28 +------------------------+
29 | information_schema |
30 | mysql |
31 | performance_schema |
32 | sys |
33 | demo |
34 +------------------------+
35
36 ####选择demo库37 mysql>use demo;38 Database changed39
40 ####查看导入的表41 mysql>show tables;42 ####查询其中任意一张表,查看数据43 mysql> select * fromt_4s_user;44 --------省略--------
如果你的项目有使用整合Redis缓存。那么请开启Redis服务
B、项目准备
修改本地项目参数配置信息。
项目参数修改主要指:数据库连接参数、文件上传地址参数、Mail邮件等其他配置信息。
在项目web资源根目录下新增跳转主页页面:index.jsp(具体主页的名字,自定义)。添加如下代码:
1
2 pageEncoding="UTF-8"%>
3
4
5
6
修改web项目下核心配置文件web.xml。添加如下代码
1
2
3
4 index.jsp
5
将项目打包为war包。
Eclipse操作方式:
a、使用Maven命令实现打包。
b、开发工具选择项目右键 > Export > war 。
将本地项目war包,通过XFTP上传至Linux用户所在目录(/home/xsge/)。
2、部署项目
项目部署多种方式,选择其一即可。
第一种(不推荐)
按本地项目部署操作办法,将项目war包部署到Tomcat/webapps目录下
步骤1:使用Linux命令复制/home/xsge/demo.war,到/usr/Apache/Tomcat9.x/apache-tomcat-9.0.8/webapps目录下(具体路径取决于你的安装路径)
1 [root@localhost downfiles]# cp /home/xsge/downfiles/demo.war /usr/Apache/apache-tomcat-9.0.39/webapps
步骤2:进入Tomcat/webapps目录下检查一下文件存在状态。
[root@localhost downfiles]# cd /usr/Apache/apache-tomcat-9.0.39/webapps/[root@localhost webapps]# ll
总用量28804
-rw-r--r--. 1 root root 29488626 10月 20 20:01demo.war
drwxr-x---. 15 root root 4096 10月 15 11:51docs
drwxr-x---. 6 root root 83 10月 15 11:51examples
drwxr-x---. 5 root root 87 10月 15 11:51 host-manager
drwxr-x---. 6 root root 114 10月 15 11:51manager
drwxr-x---. 3 root root 283 10月 15 11:51 ROOT
步骤3:进入Tomcat/bin目录命令启动Tomcat。测试访问即可。
1 [root@localhost webapps]# cd ../bin2 [root@localhost bin]# ./startup.sh#启动命令3 [root@localhost bin]# ./shutdown.sh #关闭命令
第二种(推荐)
按本地项目部署操作办法,部署特定虚拟主机上运行的一个Web应用,这样可以避免访问时在输入端口号和项目名的问题。将项目war包放置在你个人指定的目录下,可以自行决定位置。通常建议存放在当前用户主目录或者系统根目录下指定位置。(当前演示将项目放置在用户所在根目录)
声明:部署特定虚拟主机上运行的一个Web应用,需要修改配置文件,手动配置项目地址,项目资源不要放在webapps目录下。
步骤1:将war包上传后,移动至/www/demo目录下(具体路径取决于你的目录:没有自己新建)
步骤2:命令解压demo.war文件。(默认放在webapps目录下,tomcat会自动解压部署,放在其他目录,tomcat不会自动解压)
1 [root@localhost demo]# pwd #####查看当前目录
2 /www/demo3 ####解压文件:war包4 [root@localhost demo]# unzip demo.war
步骤3:修改Tomcat配置文件server.xml,更新服务器端口号为80(请先备份文件)
1 ####备份server.xml文件2 [root@localhost conf]# cpserver.xml server.xml.old3
4 ####打开编辑5 [root@localhost conf]# vim /usr/Apache/apache-tomcat-9.0.39/conf/server.xml6
7 ####键入命令 :set nu 显示行号8 ####输入i/I/a或其他,进入插入模式9 ####更新如下:约79行,将port端口更新为8010 69
11 70 connectionTimeout="20000"
12 71 redirectPort="8443" />
步骤4:修改Tomcat配置文件server.xml,手动配置项目部署路径
在host标签内添加如下代码:
添加后,按ESC退出编辑,命令:wq保存退出。
1
docBase:自动部署场景下docBase指定了该Web应用使用的WAR包路径。如果docBase指定的WAR包或应用目录就在appBase中,则不需要指定,因为Tomcat会自动扫描appBase中的WAR包和应用目录,指定了反而会造成问题。
path:path指定了访问该Web应用的上下文路径,为空,则访问时就不需要输入上下文。
步骤5:配置Linux防火墙,开放端口80
1 ####开放端口802 [root@localhost bin]# firewall-cmd --zone=public --add-port=80/tcp --permanent3 success4 ####重启防火墙5 [root@localhost bin]# systemctl restart firewalld.service6 ####查看开放的端口7 [root@localhost bin]# firewall-cmd --list-ports8 8080/tcp 3306/tcp 80/tcp
步骤6:进入Tomcat/bin目录命令启动Tomcat。测试访问即可。
1 [root@localhost bin]# ./startup.sh#启动命令
2 [root@localhost bin]# ./shutdown.sh #关闭命令
访问:http://192.168.6.88 (当然访问IP地址,资源名等取决你个人部署资源)
思路:访问该地址后,服务器加载访问/www/demo/的项目文件,加载web.xml,通过配置文件中“欢迎列表”的配置,默认加载index.jsp,再通过jsp中跳转配置,自动跳转至指定首页。
怎样linux部署web应用程序,Linux系统部署WEB项目(2020最新最详细)相关推荐
- ASP.NET Core Web 应用程序开发期间部署到IIS自定义主机域名并附加到进程调试
想必大家之前在进行ASP.NET Web 应用程序开发期间都有用到过将我们的网站部署到IIS自定义主机域名并附加到进程进行调试. 那我们的ASP.NET Core Web 应用程序又是如何部署到我们的 ...
- WEB应用程序开发与部署
WEB应用程序开发与部署 来自:http://www.atguigu.com/
- 视频教程-雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板)-微信开发
雪狐CentOS7云服务器部署微信小程序商城系统(宝塔面板) 1.多年开发和授课经验. 2.精通PHP.前端.Android.iOS等开发技术. 3.希望能将自己所学教给学生. 刘安良 ¥12.00 ...
- java web应用程序_说说Java Web中的Web应用程序|乐字节
大家好,我是乐字节的小乐,今天接着上期文章<Javaweb的概念与C/S.B/S体系结构>继续往下介绍Java Web ,这次要说的是web应用程序. 1. Web 应用程序的工作原理 W ...
- 渐进式web应用程序_为什么渐进式Web应用程序很棒,以及如何构建一个
渐进式web应用程序 by Ankita Masand 通过Ankita Masand 为什么渐进式Web应用程序很棒,以及如何构建一个 (Why Progressive Web Apps are g ...
- 【已解决】请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 <customErrors> 标记
问题 详细信息: 若要使他人能够在远程计算机上查看此特定错误信息的详细信息,请在位于当前 Web 应用程序根目录下的"web.config"配置文件中创建一个 标记.然后应将此 标 ...
- linux如何调试elf程序,Linux应用程序elf描述
玩Linux的人应该明白ELF文件是一种文件格式,就好比.txt,.doc等一样,只是这个文件是按照特定信息排列组成,同样在windows上也存在一种格式,它叫PE,老的叫dos.下面我就来看看ELF ...
- linux 中断 c语言程序,linux驱动之中断处理过程C程序部分
当发生中断之后,linux系统在汇编阶段经过一系列跳转,最终跳转到asm_do_IRQ()函数,开始C程序阶段的处理.在汇编阶段,程序已经计算出发生中断的中断号irq,这个关键参数最终传递给asm_d ...
- linux如何运行java程序,Linux环境下运行简单java程序
一.安装java 1.下载jdk8 选择对应jdk版本下载.(Tips:可在Windows下载完成后,通过FTP或者SSH到发送到Linux上) 2. 登录Linux,切换到root用户 su roo ...
最新文章
- python 用for循环生成字典_我需要创建一个for循环来生成嵌套字典
- Dubbo 在maven项目中的应用
- win10下gnuplot的安装和使用
- Linux C编程--进程间通信(IPC)5--System V IPC 机制3--共享内存
- 如何构建行业知识图谱 (以医疗行业为例)
- android 图片特征提取比对_判断ImageView当前的图片是哪个图片,然后比对资源文件的操作...
- Eclipse Maven 编译错误 Dynamic Web Module 3.0 requires Java 1.6 or newer 解决方法
- Day04:循环结构(while、do-while、for)
- 校园二手交易平台小程序《云开发演示》
- Mask-rcnn算法流程图
- 上海市高等学校信息技术水平二三级python 模拟题 编程
- matlab逆变换法产生随机数_用matlab产生随机数
- 性能测试工程师职业现状分析
- 第七篇 nacos 注册中心
- 【MATLAB】极坐标绘图 ( Polar Chart 极坐标图 | MATLAB 绘图问题 1 )
- iPhone4s提示:iPhone尚未激活
- 小i机器人Bot开放平台如何帮企业自建“金牌客服”?
- ZLG USBCAN 在Labview环境下无法打开设备的解决办法
- 乔布斯经典演讲:《Stay Hungry Stay Foolish》主要讲了什么?对我们有什么启示?
- python用于数学教学_Python基础