【Linux系统基础】(4)在Linux上部署Tomcat、Nginx软件

在这里插入图片描述

Tomcat安装部署【简单】

简介

Tomcat 是由 Apache 开发的一个 Servlet 容器,实现了对 Servlet 和 JSP 的支持,并提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。

简单来说,Tomcat是一个WEB应用程序的托管平台,可以让用户编写的WEB应用程序,被Tomcat所托管,并提供网站服务。

即让用户开发的WEB应用程序,变成可以被访问的网页。

安装

Tomcat的安装非常简单,主要分为2部分:

  1. 安装JDK环境
  2. 解压并安装Tomcat

本次安装使用Tomcat版本是:10.0.27版本,需要Java(JDK)版本最低为JDK8或更高版本

课程中使用的JDK版本是:JDK8u351版本

安装JDK环境

  1. 下载JDK软件

    https://www.oracle.com/java/technologies/downloads

    在页面下方找到:

    image-20221017163411651

    下载jdk-8u351-linux-x64.tar.gz

    image-20221017163440491

    在弹出的页面中输入Oracle的账户密码即可下载(如无账户,请自行注册,注册是免费的)

  2. 登陆Linux系统,切换到root用户

  3. 通过FinalShell,上传下载好的JDK安装包

    image-20221017163706026

  4. 创建文件夹,用来部署JDK,将JDK和Tomcat都安装部署到:/export/server 内

    mkdir -p /export/server
    
  5. 解压缩JDK安装文件

    tar -zxvf jdk-8u351-linux-x64.tar.gz -C /export/server
    
  6. 配置JDK的软链接

    ln -s /export/server/jdk1.8.0_351 /export/server/jdk
    
  7. 配置JAVA_HOME环境变量,以及将$JAVA_HOME/bin文件夹加入PATH环境变量中

    # 编辑/etc/profile文件
    export JAVA_HOME=/export/server/jdk
    export PATH=$PATH:$JAVA_HOME/bin
    
  8. 生效环境变量

    source /etc/profile
    
  9. 配置java执行程序的软链接

    # 删除系统自带的java程序
    rm -f /usr/bin/java
    # 软链接我们自己安装的java程序
    ln -s /export/server/jdk/bin/java /usr/bin/java
    
  10. 执行验证:

    java -version
    javac -version
    

解压并部署Tomcat

Tomcat建议使用非Root用户安装并启动

可以创建一个用户:tomcat用以部署

  1. 首先,放行tomcat需要使用的8080端口的外部访问权限

    CentOS系统默认开启了防火墙,阻止外部网络流量访问系统内部

    所以,如果想要Tomcat可以正常使用,需要对Tomcat默认使用的8080端口进行放行

    放行有2种操作方式:

    1. 关闭防火墙
    2. 配置防火墙规则,放行端口
    # 以下操作2选一即可
    # 方式1:关闭防火墙
    systemctl stop firewalld		# 关闭防火墙
    systemctl disable firewalld		# 停止防火墙开机自启# 方式2:放行8080端口的外部访问
    firewall-cmd --add-port=8080/tcp --permanent		# --add-port=8080/tcp表示放行8080端口的tcp访问,--permanent表示永久生效
    firewall-cmd --reload								# 重新载入防火墙规则使其生效
    

    方便起见,建议同学们选择方式1,直接关闭防火墙一劳永逸

    防火墙的配置非常复杂,后面会视情况独立出一集防火墙配置规则的章节。

  2. 以root用户操作,创建tomcat用户

    # 使用root用户操作
    useradd tomcat
    # 可选,为tomcat用户配置密码
    passwd tomcat
    
  3. 下载Tomcat安装包

    # 使用root用户操作
    wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
    # 如果出现https相关错误,可以使用--no-check-certificate选项
    wget --no-check-certificate https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.27/bin/apache-tomcat-10.0.27.tar.gz
    

    如果Linux内下载过慢,可以复制下载链接在Windows系统中使用迅雷等软件加速下载然后上传到Linux内即可

    或者使用课程资料中提供的安装包

  4. 解压Tomcat安装包

    # 使用root用户操作,否则无权限解压到/export/server内,除非修改此文件夹权限
    tar -zxvf apache-tomcat-10.0.27.tar.gz -C /export/server
    
  5. 创建Tomcat软链接

    # 使用root用户操作
    ln -s /export/server/apache-tomcat-10.0.27 /export/server/tomcat
    
  6. 修改tomcat安装目录权限

    # 使用root用户操作,同时对软链接和tomcat安装文件夹进行修改,使用通配符*进行匹配
    chown -R tomcat:tomcat /export/server/*tomcat*
    
  7. 切换到tomcat用户

    su - tomcat
    
  8. 启动tomcat

    /export/server/tomcat/bin/startup.sh
    
  9. tomcat启动在8080端口,可以检查是否正常启动成功

    netstat -anp | grep 8080
    

    image-20221017223814737

  10. 打开浏览器,输入:

    http://centos:8080或http://192.168.88.130:8080

    使用主机名(需配置好本地的主机名映射)或IP地址访问Tomcat的WEB页面

    image-20221017223915498

至此,Tomcat安装配置完成。

Nginx安装部署【简单】

简介

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

同Tomcat一样,Nginx可以托管用户编写的WEB应用程序成为可访问的网页服务,同时也可以作为流量代理服务器,控制流量的中转。

Nginx在WEB开发领域,基本上也是必备组件之一了。

安装

Nginx同样需要配置额外的yum仓库,才可以使用yum安装

安装Nginx的操作需要root身份

  1. 安装yum依赖程序

    # root执行
    yum install -y yum-utils
    
  2. 手动添加,nginx的yum仓库

    yum程序使用的仓库配置文件,存放在:/etc/yum.repo.d内。

    # root执行
    # 创建文件使用vim编辑
    vim /etc/yum.repos.d/nginx.repo
    # 填入如下内容并保存退出
    [nginx-stable]
    name=nginx stable repo
    baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=1
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true[nginx-mainline]
    name=nginx mainline repo
    baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
    gpgcheck=1
    enabled=0
    gpgkey=https://nginx.org/keys/nginx_signing.key
    module_hotfixes=true
    

    通过如上操作,我们手动添加了nginx的yum仓库

  3. 通过yum安装最新稳定版的nginx

    # root执行
    yum install -y nginx
    
  4. 启动

    # nginx自动注册了systemctl系统服务
    systemctl start nginx		# 启动
    systemctl stop nginx		# 停止
    systemctl status nginx		# 运行状态
    systemctl enable nginx		# 开机自启
    systemctl disable nginx		# 关闭开机自启
    
  5. 配置防火墙放行

    nginx默认绑定80端口,需要关闭防火墙或放行80端口

    # 方式1(推荐),关闭防火墙
    systemctl stop firewalld		# 关闭
    systemctl disable firewalld		# 关闭开机自启# 方式2,放行80端口
    firewall-cmd --add-port=80/tcp --permanent		# 放行tcp规则下的80端口,永久生效
    firewall-cmd --reload							# 重新加载防火墙规则
    
  6. 启动后浏览器输入Linux服务器的IP地址或主机名即可访问

    http://192.168.88.130 或 http://centos

    ps:80端口是访问网站的默认端口,所以后面无需跟随端口号

    显示的指定端口也是可以的比如:

    • http://192.168.88.130:80
    • http://centos:80

至此,Nginx安装配置完成。

image-20221018143113053

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/241966.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

锐捷ssh配置

配置实例 ssh-Server ssh-Server(config)#enable service ssh-server // 启用ssh服务 ssh-Server(config)#username admin privilege 15 password Test123456 // 设置ssh登陆的账户密码 ssh-Server(config)#line vty 0 4 ssh-Server(config-line)#transport input ssh …

线性回归简介

线性回归简介 1、情景描述2、线性回归 1、情景描述 假设,我们现在有这么一张图: 其中,横坐标x表示房子的面积,纵坐标y表示房价。我们猜想x与y之间存在线性关系: y k x b ykxb ykxb 现在,思考一个问题&…

纯HTML代码实现给图片增加水印并下载保存到本地

<!DOCTYPE html> <html> <head><meta charset"utf-8"><meta name"viewport" content"widthdevice-width, initial-scale1, maximum-scale1, user-scalableno"/><title>图片水印打码工具-宋佳乐博客</tit…

计算机图形学理论(3):着色器编程

本系列根据国外一个图形小哥的讲解为本&#xff0c;整合互联网的一些资料&#xff0c;结合自己的一些理解。 CPU vs GPU CPU支持&#xff1a; 快速缓存分支适应性高性能 GPU支持&#xff1a; 多个 ALU快速板载内存并行任务的高吞吐量&#xff08;在每个片段、顶点上执行着色…

nn.Embedding()个人记录

维度 import torch.nn as nnembedding nn.Embedding(num_embeddings 10, embedding_dim 256) nn.Embedding()随机产生一个权重矩阵weight&#xff0c;维度为&#xff08;num_embeddings, embedding_dim&#xff09; 输入维度&#xff08;batch_size, Seq_len&#xff09…

基于Java+SpringBoot+MyBatis-plus+Vue前后端分离小区管理系统设计与实现2.0

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

力扣日记12.24-【二叉树篇】236. 二叉树的最近公共祖先

力扣日记&#xff1a;【二叉树篇】236. 二叉树的最近公共祖先 日期&#xff1a;2023.12.24 参考&#xff1a;代码随想录、力扣 ps&#xff1a;提前祝 平安夜快乐&#xff01; 236. 二叉树的最近公共祖先 题目描述 难度&#xff1a;中等 给定一个二叉树, 找到该树中两个指定节点…

Python连接数据库

文章目录 一、安装mysql二、SQLyog可视化操作三、python实现数据库单表类封装1. config 文件——config.py2. 封装类&#xff08;model&#xff09;——model.py3. 测试文件——test.py 一、安装mysql 官网安装&#xff0c;或者Windows64位直接在我的资源里面上传了mysql&…

C/C++ 基础函数

memcpy&#xff1a;C/C语言中的一个用于内存复制的函数&#xff0c;声明在 string.h 中&#xff08;C是 cstring&#xff09; void *memcpy(void *destin, void *source, unsigned n);作用是&#xff1a;以source指向的地址为起点&#xff0c;将连续的n个字节数据&#xff0c;…

HarmonyOS - 鸿蒙开发入门

文章目录 HarmonyOS核心资源特性&#xff1a;全场景终端HarmonyOS 版本 HarmonyOS 和 OpenHarmony教程资源开发环境开发工具 - DevEco开发语言 - ArkTS核心框架 - ArkUI 考证 HarmonyOS 开发交流秋秋群&#xff1a;23458659&#xff0c;V : ez-code&#xff0c;期待交流和合作 …

前端基础location的使用

概念 获取当前页面的地址信息&#xff0c;还可以修改某些属性&#xff0c;实现页面跳转和刷新等。 样例展示 window.location 含义.originURL 基础地址&#xff0c;包括协议名、域名和端口号.protocol协议 (http: 或 https:).host域名端口号.hostname域名.port端口号.pathname路…

自学SLAM(9)《第五讲:特征点法视觉里程计》作业

文章目录 1.ORB特征点1.1 ORB提取1.2 ORB描述1.3 暴力匹配1.4 最后&#xff0c;请结合实验&#xff0c;回答下⾯⼏个问题 2.从 E 恢复 R&#xff0c;t3.用 G-N 实现 Bundle Adjustment4.* 用 ICP 实现轨迹对齐 1.ORB特征点 1.1 ORB提取 ORB(Oriented FAST and BRIEF) 特征是 S…

计算机视觉基础(10)——深度学习与图像分类

前言 传统视觉算法采用手工设计特征与浅层模型&#xff0c;而手工设计特征依赖于专业知识&#xff0c;且泛化能力差。深度学习的出现改变了这一状况&#xff0c;为视觉问题提供了端到端的解决方案。在之前的课程中&#xff0c;我们已经学习了图像分类的传统知识。在本节课中&am…

c语言:求1/2+2/3+3/4+……n-1/n的和|练习题

一、题目 求1/22/33/4……n-1/n的和 如图&#xff1a; 二、思路分析 1、1/2、2/3、3/4……可以用(i/i1) 2、设置一个函数&#xff0c;求数的相加之和 三、代码截图【带注释】 四、源代码【带注释】 #include <stdio.h> int main() { int num; printf("输入…

javassmmysql医院线上线下全诊疗系统的设计与实现02210-计算机毕业设计项目选题推荐(免费领源码)

目 录 摘要 1 绪论 1.1背景及意义 1.2研究现状 1.3ssm框架介绍 1.4论文结构与章节安排 2 医院线上线下全诊疗系统系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分…

Git常用命令及解释说明

目录 前言1 git config2 git init3 git status4 git add5 git commit6 git reflog7 git log8 git reset结语 前言 Git是一种分布式版本控制系统&#xff0c;广泛用于协作开发和管理项目代码。了解并熟练使用Git的常用命令对于有效地管理项目版本和历史记录至关重要。下面是一些…

springcloud-gateway-2-鉴权

目录 一、跨域安全设置 二、GlobalFilter实现全局的过滤与拦截。 三、GatewayFilter单个服务过滤器 1、原理-官方内置过滤器 2、自定义过滤器-TokenAuthGatewayFilterFactory 3、完善TokenAuthGatewayFilterFactory的功能 4、每一个服务编写一个或多个过滤器&#xff0c…

关于“Python”的核心知识点整理大全39

目录 ​编辑 14.1.5 将 Play 按钮切换到非活动状态 game_functions.py 14.1.6 隐藏光标 game_functions.py game_functions.py 14.2 提高等级 14.2.1 修改速度设置 settings.py settings.py settings.py game_functions.py 14.2.2 重置速度 game_functions.py 1…

饥荒Mod 开发(二一):超大便携背包,超大物品栏,永久保鲜

饥荒Mod 开发(二十)&#xff1a;显示打怪伤害值 源码 游戏中的物品栏容量实在太小了&#xff0c;虽然可以放在箱子里面但是真的很不方便&#xff0c;外出一趟不容易看到东西都不能捡。实在是虐心。 游戏中的食物还有变质机制&#xff0c;时间长了就不能吃了&#xff0c;玩这个游…

【高数定积分求解旋转体体积】 —— (上)高等数学|定积分|柱壳法|学习技巧

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 &#x1f4ab;个人格言:"没有罗马,那就自己创造罗马~" 目录 Shell method Setting up the Integral 例题 Example 1: Example 2: Example 3: Computing…