今天工作需要在linux服务器上部署tomcat。
我从官网上下载了tomcat到我自己的机子,然后上传到服务器,再进入bin后执行./startup.sh启动,结果发现从我自己的机子访问失败。
百度之,可能是因为没有开放8080端口,故开放8080端口:以下内容参考此链接
尝试一:开放端口
配置防火墙
编辑防火墙配置
$ vi /etc/sysconfig/iptables
添加8080端口的防火墙,允许访问.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
注意!非常关键:端口的配置必须要在如下配置的上方,放在下方无效.
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
输入i开始编辑,ESC键结束编辑,WQ保存并退出.
重启防火墙
$ service iptables restart
最后发现还是不行,本方法失败。
之后与领导商量时灵感迸发,莫非我的机子连不上服务器或者没有访问权限?
百度之以下内容参考此链接
windows下查看远程机器端口是否开放的方法,在cmd中用telnet命令,格式是telnet IP port
,结果cmd告诉我
“'telnet' 不是内部或外部命令,也不是可运行的程序”,解决起来也简单(以下内容参考此链接)
这是说明电脑上telnet这个功能没有打开
1、打开电脑的控制面板
2、找到程序和功能
3、左侧的启动或关闭Windows功能
4、找到“telnet客户端”,打上对勾就可以啦
弄完了上述步骤再来一次“telnet 172.20.122.XXX 8080”,结果cmd输出告知“正在连接172.20.122.XXX无法打开到主机的连接。 在端口 8080: 连接失败”。然后干脆把服务器的防火墙关了(以下内容参考此链接)
尝试二:linux关闭防火墙
关闭防火墙的方法为:
1. 永久性生效
开启:chkconfig iptables on
关闭:chkconfig iptables off
2. 即时生效,重启后失效
开启:service iptables start
关闭:service iptables stop
补充:
a. 防火墙还需要关闭ipv6的防火墙:
chkconfig ip6tables off
并且可以通过如下命令查看状态:
chkconfig --list iptables
最后查看防火墙开放的端口
查看已开放端口
/etc/init.d/iptables status
结果如下
Table: filter
Chain INPUT (policy ACCEPT)
num target prot opt source destination
2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:22
3 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
做完以上操作再来访问一次依旧无法访问到网页。
最后没办法,尝试换个法子。用以下法子最后解决问题了。不是用工具上传tomcat.zip到服务器后解压,而是直接从linux服务器将tar.gz文件下载下来,然后解压,最后启动。以下内容参考此链接
最终解决:linux下安装tomcat7
第一步:下载Tomcat安装包
下载地址:https://tomcat.apache.org/download-70.cgi
[root@localhost ~]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-7/v7.0.82/bin/apache-tomcat-7.0.82.tar.gz
第二步:解压
[root@localhost ~]# tar -zxvf /usr/java/apache-tomcat-7.0.82.tar.gz
第三步:启动
进入到tomcat bin目录中。
输入 ./startup.sh启动Tomcat,假如显示 Tomcat started 则表明启动成功。
第四步:检查
访问:http://172.20.122.XXX:8080/
搞定!