• Tomcat启动后外部浏览器无法访问 CentOS7


    一、问题现象

    CentOS7操作系统下,已经部署并启动Tomcat,Tomcat可见。但使用其他PC的浏览器访问不了Tomcat。

    二、分析原因


    此问题的主要原因在于CentOS操作系统有防火墙。防火墙的存在,会导致端口无法被外部访问。
    想要解决这一问题,就是要在防火墙上添加允许访问的端口号,使端口号对外开放。 CentOS7以下默认防火墙是iptables,CentOS7及以上版本的默认防火墙是firewalld。因此,
    CentOS7需要在firewalld的上添加Tomcat的端口号。
      备注:
    
           执行命令,即可实现取防火墙服务的锁定
           systemctl unmask firewalld
    
           需锁定该服务时可输入以下命令行执行
             systemctl mask firewalld

    三、解决方案

    1、检查防火墙状态
    # firewall-cmd --state
    1
    返回值为“running”,即防火墙运行。
    
    若无返回信息,则防火墙为关闭状态,启动防火墙的命令如下:
    # systemctl start firewalld 
    1
    2、检查防火墙上开启的端口信息
    # firewall-cmd --permanent --zone=public --list-ports
    1
    返回信息为空,说明当前防火墙未开启任何端口。
    
    
    3、开启Tomcat的端口
    上一步返回信息为空,这里将Tomcat的端口添加到防火墙中。

    命令解析:
    --zone #做用域
    --add-port=8080/tcp #添加端口,格式为:端口/通信协议
    --permanent #永久生效,没有此参数设置,重启后会失效。

    参数permanent,表示永久的添加此端口。若命令中未添加此参数,表示临时性添加端口,系统重启后将此设置失效。
    
    # firewall-cmd --zone=public --add-port=8080/tcp --permanent
    14、重新加载防火墙设置
    重新加载防火墙设置,使配置生效。这一步不做,浏览器还是访问不了Tomcat。
    
    # firewall-cmd --reload
    1
    5、验证Tomcat配置是否生效
    # firewall-cmd --zone=public --query-port=8080/tcp
    1
    返回“yes”,表示配置生效。
    
    也可以通过下面命令验证。
    
    # firewall-cmd --permanent --zone=public --list-ports 

    firewall-cmd --list-port
    1 有对应的端口信息返回,表示配置生效。

     

  • 相关阅读:
    数组
    做了个进制转换图
    类的练习
    3.10l练习
    c#学习第二课
    c#第四课习题
    c#学习第三课
    学习PHP&MYSQL之——字符编码篇(一)
    中缀表达式转换成后缀表达式
    模板方法模式(Template Pattern)
  • 原文地址:https://www.cnblogs.com/elfin/p/16337792.html
Copyright © 2020-2023  润新知