Spring Tomcat服务器“外部”不工作

Spring Tomcat服务器“外部”不工作,spring,maven,spring-mvc,tomcat,server,Spring,Maven,Spring Mvc,Tomcat,Server,我已经安装了tomcat服务器,它可以在本地主机上运行,但是我不能在外部运行它。我必须更改一些设置吗? 我什么都试过了,但似乎在其他地方不起作用。。。这很奇怪,因为它在本地主机上运行得非常好。因此,您在spring boot应用程序中运行tomcat,该应用程序从maven spring boot插件启动,它在本地主机上侦听,但无法使用LAN IP地址访问 只是一张便条——SO上的人都很想帮忙,但获得必要的信息不应该是寻宝 首先 检查tomcat正在侦听的IP地址和端口:spring引导日志通常

我已经安装了tomcat服务器,它可以在本地主机上运行,但是我不能在外部运行它。我必须更改一些设置吗?
我什么都试过了,但似乎在其他地方不起作用。。。这很奇怪,因为它在本地主机上运行得非常好。

因此,您在spring boot应用程序中运行tomcat,该应用程序从maven spring boot插件启动,它在本地主机上侦听,但无法使用LAN IP地址访问

只是一张便条——SO上的人都很想帮忙,但获得必要的信息不应该是寻宝

首先

检查tomcat正在侦听的IP地址和端口:spring引导日志通常会告诉您主机的名称,例如mymac.local,并且会显示端口,端口:8080HTTP,:

作为一项规则,tomcat开始监听所有IP地址0.0.0.0,所以奇怪的是,这对您不起作用

另一种方法是使用netstat。对于Max/Linux:

$ netstat -an  | grep 8080
tcp46      0      0  *.8080                 *.*                    LISTEN     
在窗户上

C:\> netstat -an | find "8080"    
  TCP    0.0.0.0:8080            0.0.0.0:0              LISTENING
  TCP    [::]:8080               [::]:0                 LISTENING
如果你的应用程序正在0.0.0.0或192.168.0.100之类的真实IP上监听,那么你可能会在网络上被防火墙或屏蔽

如果你的应用程序只在localhost/127.0.0.1上监听,那么你需要告诉tomcat使用真正的IP,如以下问题:

其次 使用简单的客户端(如curl/telnet/netcat)进行基本的连接。浏览器,尤其是IE,可能会受到诸如Windows组策略之类的限制,这将阻止许多信息很少或没有信息的东西工作

因此,在另一台机器上,假设tomcat在192.168.0.100上运行,看看是否可以远程登录到tomcat端口:

$ telnet 192.168.0.100 8080
Trying 192.168.0.100...
Connected to localhost.
Escape character is '^]'.
如果您看到已连接的消息,则表示您已连接,因此,如果浏览器无法正常工作,则表示存在其他问题

如果立即拒绝,则两台计算机之间没有路由/连接。这通常意味着您的tomcat没有监听正确的IP地址

$ telnet 192.168.0.100 8080
Trying  192.168.0.100...
telnet: connect to address  192.168.0.100: Connection refused
telnet: Unable to connect to remote host
如果它只是挂在连接消息上,那么它可能是防火墙

$ telnet 192.168.0.100 8080
Trying 192.168.0.100...

因此,您正在spring boot应用程序中运行tomcat,该应用程序从maven spring boot插件启动,它在本地主机上侦听,但无法使用您的LAN IP地址访问

只是一张便条——SO上的人都很想帮忙,但获得必要的信息不应该是寻宝

首先

检查tomcat正在侦听的IP地址和端口:spring引导日志通常会告诉您主机的名称,例如mymac.local,并且会显示端口,端口:8080HTTP,:

作为一项规则,tomcat开始监听所有IP地址0.0.0.0,所以奇怪的是,这对您不起作用

另一种方法是使用netstat。对于Max/Linux:

$ netstat -an  | grep 8080
tcp46      0      0  *.8080                 *.*                    LISTEN     
在窗户上

C:\> netstat -an | find "8080"    
  TCP    0.0.0.0:8080            0.0.0.0:0              LISTENING
  TCP    [::]:8080               [::]:0                 LISTENING
如果你的应用程序正在0.0.0.0或192.168.0.100之类的真实IP上监听,那么你可能会在网络上被防火墙或屏蔽

如果你的应用程序只在localhost/127.0.0.1上监听,那么你需要告诉tomcat使用真正的IP,如以下问题:

其次 使用简单的客户端(如curl/telnet/netcat)进行基本的连接。浏览器,尤其是IE,可能会受到诸如Windows组策略之类的限制,这将阻止许多信息很少或没有信息的东西工作

因此,在另一台机器上,假设tomcat在192.168.0.100上运行,看看是否可以远程登录到tomcat端口:

$ telnet 192.168.0.100 8080
Trying 192.168.0.100...
Connected to localhost.
Escape character is '^]'.
如果您看到已连接的消息,则表示您已连接,因此,如果浏览器无法正常工作,则表示存在其他问题

如果立即拒绝,则两台计算机之间没有路由/连接。这通常意味着您的tomcat没有监听正确的IP地址

$ telnet 192.168.0.100 8080
Trying  192.168.0.100...
telnet: connect to address  192.168.0.100: Connection refused
telnet: Unable to connect to remote host
如果它只是挂在连接消息上,那么它可能是防火墙

$ telnet 192.168.0.100 8080
Trying 192.168.0.100...

您将提供更多的信息。为什么不能在外部运行它?是否有错误消息?外部实际上意味着什么?是tomcat出了问题,还是您编写的web应用程序?当我从外部说时,我的意思是像在其他机器上一样。。。。它在本地主机上工作,但当我使用服务器的ip地址在不同的机器上尝试时,它在@Stringy05上不起作用。您仍然没有提供任何详细信息,如错误消息或类似信息,但我要冒险说,您的tomcat只在本地主机上侦听,而不是在网络ip上侦听。检查server.xml中的地址设置,并使用主机名或0.0.0.0,与此类似:好吧,假设tomcat或多或少在默认配置下运行,让它在远程主机上运行应该不是什么大问题。它也可能是拒绝访问的目标主机的防火墙。您是否检查了Tomcat default 8080使用的端口是否在远程主机上开放供访问?@stringy05如果我第一次使用spring/tomcast,我只有pom.xml。。。我没有看到server.xml。。。没有错误。这就是我所做的mvn spring boot:运行,然后当我这样做时,它会工作,但现在当我使用不同的machi时
我的服务器没有运行的网元,我使用服务器的计算机IP并执行https:xxx.xxx.xxx:8080,这应该可以工作,但页面甚至没有加载。您将提供更多信息。为什么不能在外部运行它?是否有错误消息?外部实际上意味着什么?是tomcat出了问题,还是您编写的web应用程序?当我从外部说时,我的意思是像在其他机器上一样。。。。它在本地主机上工作,但当我使用服务器的ip地址在不同的机器上尝试时,它在@Stringy05上不起作用。您仍然没有提供任何详细信息,如错误消息或类似信息,但我要冒险说,您的tomcat只在本地主机上侦听,而不是在网络ip上侦听。检查server.xml中的地址设置,并使用主机名或0.0.0.0,与此类似:好吧,假设tomcat或多或少在默认配置下运行,让它在远程主机上运行应该不是什么大问题。它也可能是拒绝访问的目标主机的防火墙。您是否检查了Tomcat default 8080使用的端口是否在远程主机上开放供访问?@stringy05如果我第一次使用spring/tomcast,我只有pom.xml。。。我没有看到server.xml。。。没有错误。这就是我做的mvn spring boot:run,然后当我做的时候,它工作了,但是现在当我在另一台机器上运行我的服务器时,我使用我服务器的计算机IP并执行https:xxx.xxx.xxx:8080,这应该可以工作,但页面甚至没有加载