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. 安装Linux系统(CentOS7):待续未完
  2. 配置YUM源:https://www.cnblogs.com/xsge/p/13821276.html
  3. 安装MySQL5.7:https://www.cnblogs.com/xsge/p/13827288.html
  4. 安装JDK1.8:https://www.cnblogs.com/xsge/p/13817301.html
  5. 安装Tomcat9.x:https://www.cnblogs.com/xsge/p/13819537.html
  6. 安装Redis6.x:https://www.cnblogs.com/xsge/p/13841875.html

1、项目部署前准备工作

  A、数据库准备

  1. 本地主机导出数据库文件:xxx.sql。
    DOS命令(Window键+R键快速打开运行,输入CMD回车,键入下面的命令执行)

    1 ####格式:mysqldump  -u用户名  -p密码  --databases 库名>导出文件地址+文件名.sql
    2 C:\Users\XIAOSAGEER>mysqldump -uroot -proot --databases t_4s_demo>D:/demo.sql

    导出方式有很多,更多方式请自己查阅资料或参考我的博客首页,学习有关SQL命令操作。

  2. 启动并连接Linux服务。
  3. 使用XFTP工具,将xxx.sql文件上传至Linux系统/home/xsge目录中。(保存地址并非固定,建议放置在当前用户目录下)
  4. 切换root账户。
  5. 登录MySQL。
  6. 创建数据库demo。
  7. 导入数据库信息。
     1 ####切换root账户
    2 [xsge@localhost ~]$ su
    3 密码:

    4 ####登录MySQL:-u用户名 -p密码
    5 [root@localhost ~]# mysql -uxsge -p
    6 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.sql
    24 --------省略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 changed
    39
    40 ####查看导入的表
    41 mysql> show tables;
    42 ####查询其中任意一张表,查看数据
    43 mysql> select * from t_4s_user;
    44 --------省略--------
  8. 如果你的项目有使用整合Redis缓存。那么请开启Redis服务

  B、项目准备

  1. 修改本地项目参数配置信息。
    项目参数修改主要指:数据库连接参数、文件上传地址参数、Mail邮件等其他配置信息。
  2. 在项目web资源根目录下新增跳转主页页面:index.jsp(具体主页的名字,自定义)。添加如下代码:
    1 <%@ page language="java" contentType="text/html; charset=UTF-8"
    2 pageEncoding="UTF-8"%>
    3 <!-- 引入C标签库 -->
    4 <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    5 <!-- 重定向至某个页面 -->
    6 <c:redirect url="login"/>
  3. 修改web项目下核心配置文件web.xml。添加如下代码
    1 <!-- 欢迎页面列表 -->
    2 <welcome-file-list>
    3 <!-- 访问项目时默认加载的页面 -->
    4 <welcome-file>index.jsp</welcome-file>
    5 </welcome-file-list>
  4. 将项目打包为war包。
    Eclipse操作方式:
      a、使用Maven命令实现打包。
      b、开发工具选择项目右键 > Export > war 。
  5. 将本地项目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:01 demo.war
drwxr-x---. 15 root root 4096 10月 15 11:51 docs
drwxr-x---. 6 root root 83 10月 15 11:51 examples
drwxr-x---. 5 root root 87 10月 15 11:51 host-manager
drwxr-x---. 6 root root 114 10月 15 11:51 manager
drwxr-x---. 3 root root 283 10月 15 11:51 ROOT

  步骤3:进入Tomcat/bin目录命令启动Tomcat。测试访问即可。

1 [root@localhost webapps]# cd ../bin
2 [root@localhost bin]# ./startup.sh #启动命令
3 [root@localhost bin]# ./shutdown.sh #关闭命令

  访问:http://192.168.6.88:8080/demo/index (当然访问IP地址,资源名等取决你个人部署资源)

  第二种(推荐)

  按本地项目部署操作办法,部署特定虚拟主机上运行的一个Web应用,这样可以避免访问时在输入端口号和项目名的问题。将项目war包放置在你个人指定的目录下,可以自行决定位置。通常建议存放在当前用户主目录或者系统根目录下指定位置。(当前演示将项目放置在用户所在根目录)

声明:部署特定虚拟主机上运行的一个Web应用,需要修改配置文件,手动配置项目地址,项目资源不要放在webapps目录下。

  步骤1:将war包上传后,移动至/www/demo目录下(具体路径取决于你的目录:没有自己新建)

  步骤2:命令解压demo.war文件。(默认放在webapps目录下,tomcat会自动解压部署,放在其他目录,tomcat不会自动解压)

1 [root@localhost demo]# pwd  #####查看当前目录
2 /www/demo
3 ####解压文件:war包
4 [root@localhost demo]# unzip demo.war

  步骤3:修改Tomcat配置文件server.xml,更新服务器端口号为80(请先备份文件)

 1 ####备份server.xml文件 
2 [root@localhost conf]# cp server.xml server.xml.old
3
4 ####打开编辑
5 [root@localhost conf]# vim /usr/Apache/apache-tomcat-9.0.39/conf/server.xml
6
7 ####键入命令 :set nu  显示行号
8 ####输入i/I/a或其他,进入插入模式
9 ####更新如下:约79行,将port端口更新为80
10 69 <Connector port="80" protocol="HTTP/1.1"
11 70 connectionTimeout="20000"
12 71 redirectPort="8443" />

  步骤4:修改Tomcat配置文件server.xml,手动配置项目部署路径

    在host标签内添加如下代码:

    添加后,按ESC退出编辑,命令:wq保存退出。

1 <Context  path=""  docBase="/www/demo"/>

docBase:自动部署场景下docBase指定了该Web应用使用的WAR包路径。如果docBase指定的WAR包或应用目录就在appBase中,则不需要指定,因为Tomcat会自动扫描appBase中的WAR包和应用目录,指定了反而会造成问题。

path:path指定了访问该Web应用的上下文路径,为空,则访问时就不需要输入上下文。

步骤5:配置Linux防火墙,开放端口80

1 ####开放端口80
2 [root@localhost bin]# firewall-cmd --zone=public --add-port=80/tcp --permanent
3 success
4 ####重启防火墙
5 [root@localhost bin]# systemctl restart firewalld.service
6 ####查看开放的端口
7 [root@localhost bin]# firewall-cmd --list-ports
8 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项目(2020最新最详细)的更多相关文章

  1. Linux系统部署Web项目

    首先,需要有java环境和tomcat服务器,至于这个怎么安装,可以参考:云服务器 java+tomcat 部署与配置 项目部署 有两个大步骤: Step1 将已经写好的web项目打包成war包,在I ...

  2. 6.linux下部署 web 项目

    安装java 1.下载 linux 环境的jdk 2.上传该压缩包到 linux 系统中并且解压 tar -zxvf 压缩包名 3.配置环境变量并且刷新配置 export JAVA_HOME=/ali ...

  3. 在Linux上部署Web项目

    You believe it or not there is a feeling, lifetime all not lost to time. 在Linux上部署Web项目 这个是普通的web项目, ...

  4. Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql)

    转载自:Linux系统部署JavaWeb项目(超详细tomcat,nginx,mysql) 我的系统是阿里云的,香港的系统,本人选择的是系统镜像:CentOS 7.3 64位. 具体步骤: 配置Jav ...

  5. 基于阿里云服务器Linux系统部署JavaWeb项目

    前段时间刚完成一个JavaWeb项目,想着怎么部署到服务器上,边学边做,花了点时间终于成功部署了,这里总结记录一下过程中所遇到的问题及解决方法.之所以选择阿里云,考虑到它是使用用户最多也是最广泛的云服 ...

  6. Linux Weblogic部署web项目(war包)

    第一步,启动并访问weblogic,进入登录页面 第二步,进入主页面,开始部署项目 第三步,上载项目war包 选择需要上载的本地war包 第四步,开始项目配置 继续下一步 选择红色标记的配置 第五步, ...

  7. ubuntu系统部署web项目

    1.安装java 下载java安装文件 可至http://www.oracle.com/technetwork/java/javase/downloads/index.html下载最新的JDK版本,当 ...

  8. Linux上部署web服务器并发布web项目-转

    Linux上部署web服务器并发布web项目   近在学习如何在linux上搭建web服务器来发布web项目,由于本人是linux新手,所以中间入了不少坑,搞了好久才搞出点成果.以下是具体的详细步骤以 ...

  9. CentOS6.4虚拟机设置固定IP、安装JDK、Tomcat、Redis并部署web项目

    一.CentOS设置固定IP 1.直接修改配置文件的方式,原文地址:http://www.cnblogs.com/zhja/p/3964159.html (1)首先获取你的GATEWAY 方便后面在c ...

随机推荐

  1. 云计算openstack——高可以负载均衡(14)

    一.云平台概要 1.本openstack云平台使用开源软件Openstack Ocata版…… 2.OpenStack 部署环境中,各节点可以分为几类: Cloud Controller Node ( ...

  2. Redis底层数据结构详解

    上一篇说了Redis有五种数据类型,今天就来聊一下Redis底层的数据结构是什么样的.是这一周看了<redis设计与实现>一书,现来总结一下.(看书总是非常烦躁的!) Redis是由C语言 ...

  3. 关于Mybaits

    mybatis 返回多表多字段用 mybatis 返回多表多字段用 resultType=”java.util.Map”轻松解决问题.不用加什么DTO.这样前端要什么字段就返回什么字段.不用在对多余的 ...

  4. Jenkins持续集成git、gitlab、sonarqube(7.0)、nexus,自动化部署实战,附安装包,严禁转载!!!

    导读 之前用的都是SVN,由于工作需要用到Git,求人不如求己,技多不压身,多学一项技能,未来就少求别人一次,系统的学一遍,自己搭建一整套环境,自动化部署(自动发版),代码质量检测等等(为啥不用doc ...

  5. Gradle系列之Android Gradle高级配置

    本篇文章主要在之前学习的基础上,从实际开发的角度学习如何对 Android Gradle 来进行自定义以满足不同的开发需求,下面是 Gradle 系列的几篇文章: Gradle系列之初识Gradle ...

  6. java 集合删除数据

    public static void main(String[] args) { List<Integer> list = new ArrayList<>(Arrays.asL ...

  7. 原子类的 ABA 问题

    原子引用 public class AtomicReferenceDemo { public static void main(String[] args) { User cuzz = new Use ...

  8. [VBA原创源代码] excelhome 对花名册进行分类

    最近在学习<菜鸟谈VBA最最基础入门<原创>>,其中第22节有一个VBA编程作业,实现对花名册进行分类. 自己花了点时间,自己丫丫学步,终于实现出来. 在原创聚集地cnblog ...

  9. spring-boot-route(八)整合mybatis操作数据库

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以使用简单的 XML ...

  10. DMZ是什么

    刚刚接触安全域,实在是佩服自己真的是菜,,,啥都不懂,看看过段时间能有多大进步吧... 概念 DMZ:它是一个缓冲区,一个隔离区.它是位于两台防火墙之间的区域,相对于INTER网来说安全级别高一些,但 ...