• 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. 安装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:UsersXIAOSAGEER>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中跳转配置,自动跳转至指定首页。

  • 相关阅读:
    MySQL 高可用架构在业务层面的分析研究
    HDU 4983 Goffi and GCD(数论)
    Request中的方法调用
    servlet中不能没有无参构造函数
    ServletConfig、ServletContext属性遍历
    Eclipse格式化代码换行、删除空行
    Spring EL中的类操作符
    Spring集合配置
    spring EL表达式,null-safe表达式
    spring的value,null标签
  • 原文地址:https://www.cnblogs.com/xsge/p/13848709.html
Copyright © 2020-2023  润新知