linux部署项目,日志显示发布成功却无法访问的问题
1.排查是否主程序是否运行成功,
可以telnet一下tomact的ip+端口,如果telnet成功就说明成功运行,获取tomcat端口的方法
1.首先通过命令:ps -ef|grep tomcat 获得进程号
2.再通过netstat -nlp|grep (进程号)获取端口号
2.排除是否代理转发的问题
(排除Nginx是否挂掉了Nginx是否代理成功)
打开Nginx目录下的conf查看nginx.conf
查看转发端口以及转发ip是否有误
无误排查是否是nginx挂掉了,telnet nginx的端口
和上面的一样ps -ef | grep nginx查看进程号查看进程,查看目录路径
netstat -nlp|grep (进程号)获取端口号去telnet
3.排除防火墙的问题
查看服务器防火墙是否封禁了对外的端口ip,确定对外开放接口:比如80还是443什么的(是否统一打包对外开放)
查看防火墙firewall-cmd --list-all
看白名单内有没有对外发布的ip以及端口
没有的话就通过firewall-cmd --permanent --add-rich-rule='rule family=“ipv4” source address=“192.168.31.0/24” port protocol=“tcp” port=“80” accept’添加,确定success以后 firewall-cmd --reload重启
# firewall-cmd --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services:
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
rule family="ipv4" source address="192.168.48.108" port port="22" protocol="tcp" accept
rule family="ipv4" source address="192.168.48.109" port port="22" protocol="tcp" accept
rule family="ipv4" source address="192.168.48.110" port port="22" protocol="tcp" accept
rule family="ipv4" source address="192.168.30.16" port port="22" protocol="tcp" accept
rule family="ipv4" source address="192.168.30.17" port port="22" protocol="tcp" accept
rule family="ipv4" source address="192.168.30.18" port port="22" protocol="tcp" accept
rule family="ipv4" source address="100.66.255.18" port port="22" protocol="tcp" accept
rule family="ipv4" source address="100.66.255.19" port port="22" protocol="tcp" accept
rule family="ipv4" source address="125.218.208.0/24" port port="22" protocol="tcp" accept
[root@lixiao-app-22-184 bin]# firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.31.0/24" port protocol="tcp" port="80" accept'
success
[root@lixiao-app-22-184 bin]# firewall-cmd reload
usage: see firewall-cmd man page
firewall-cmd: error: unrecognized arguments: reload
[root@lixiao-app-22-184 bin]# firewall-cmd -reload
usage: see firewall-cmd man page
firewall-cmd: error: unrecognized arguments: -reload
[root@lixiao-app-22-184 bin]# firewall-cmd --reload
123456789101112131415161718192021222324252627282930313233
4.排除安全策略的问题(是否安全部封掉了)
5.实际工作-回忆版,可能不准确
当时我是按照部署项目的流程部署已一下,因为我还没有学过nginx,所以当切换服务器之后,访问的地址自然就变了,就是访问项目我不知道地址,我是直接从原来的服务器上把整个tomcat复制过来的,
因为之前不管是生产环境还是测试环境都是使用的域名,所以我还是使用原来的域名访问指定是不对的,但是我也不知道在那配置这个,所以问了领导,还是没解决域名映射的问题,但是可以把之前的域名直接换成服务器地址,其他部分保持不变就应该可以登录成功。
我这里还有一个问题就是在访问项目之前是报错的Nginx 403 forbidden