求教,有个关于服务器端口80与8080访问的问题

来源:百度文库 编辑:超级军网 时间:2024/04/27 19:09:33
如题所示。
已知条件:
(1)我现在有一台在内网运行的服务器,其操作平台是WindosServer2003企业版。
(2)该服务器有两个IP地址:
IP地址A是该机器用于在内网运行时的地址;
IP地址B是该机器用于在外网运行时的地址。
(3)机器上运行着两个网站甲和乙。
甲是一个早年开始就已经存在的网站,使用IIS作为管理;
乙是后来新安装的一个网站系统,使用Tomcat作为管理。
两个网站的运行情况如下:
内网中在浏览器地址栏输入A,进入甲站;
内网中在浏览器地址栏输入A:8080,进入乙站;
外网中在浏览器地址栏输入B,进入甲站;
外网中在浏览器地址栏输入B:8080,显示故障。
================================
问:
(1)为什么输入B:8080会显示故障?
(2)现在我希望在外网能浏览乙站,地址是B:8080,我该如何去做?如题所示。
已知条件:
(1)我现在有一台在内网运行的服务器,其操作平台是WindosServer2003企业版。
(2)该服务器有两个IP地址:
IP地址A是该机器用于在内网运行时的地址;
IP地址B是该机器用于在外网运行时的地址。
(3)机器上运行着两个网站甲和乙。
甲是一个早年开始就已经存在的网站,使用IIS作为管理;
乙是后来新安装的一个网站系统,使用Tomcat作为管理。
两个网站的运行情况如下:
内网中在浏览器地址栏输入A,进入甲站;
内网中在浏览器地址栏输入A:8080,进入乙站;
外网中在浏览器地址栏输入B,进入甲站;
外网中在浏览器地址栏输入B:8080,显示故障。
================================
问:
(1)为什么输入B:8080会显示故障?
(2)现在我希望在外网能浏览乙站,地址是B:8080,我该如何去做?
乙没有绑定B的IP。
应该是地址问题!
外网telnet 8080端口试试再说
外网8080端口未开放,就是这个问题
外网的防火墙可能会打开常用的HTTP服务80端口,但未必打开了8080端口,因此所有外网指向8080端口的访问请求都被拒绝了。我觉得这是最可能的原因。
防火墙的可能性最大
直接在服务器上用浏览器打开地址B:8080能不能显示网页呢?如果可以,检查外网的网络设置(如防火墙的设置);如果不行,检查TOMCAT的设置。
fzchu 发表于 2015-11-3 19:05
直接在服务器上用浏览器打开地址B:8080能不能显示网页呢?如果可以,检查外网的网络设置(如防火墙的设置 ...
直接在服务器上是打不开B:8080的;同时在服务器上也无法打开B。
这个是什么原因?
另外乙站的tomcat是乙站系统自带的,换言之,乙站就是一个安装包解压缩后经简单设置获得的网站,他的tomcat在主机操作系统的环境变量中未写入。
involute 发表于 2015-11-2 19:01
外网的防火墙可能会打开常用的HTTP服务80端口,但未必打开了8080端口,因此所有外网指向8080端口的访问请求 ...
外网的防火墙……
这样说问题不在我们办公室的这台服务器上,而是在我们公司的对外的网关上?
也就是说相关的问题我应该去找我们的网络技术部的工作人员反映,是吧?
IP绑定问题, 比如, iis有时候, 就默认bind一个ip, 改成bind到0.0.0.0就行了.
常盘台警卫 发表于 2015-11-19 16:29
直接在服务器上是打不开B:8080的;同时在服务器上也无法打开B。
这个是什么原因?
另外乙站的tomcat是 ...
iis中没有设置b网站吧? 都是在tomcat中设置的? 如果是tomcat中设置的, tomcat启动没有? 跟踪看一下log就行了.

你可以看看服务器空间, 看看是不是access log把磁盘都给写满了.
netxiao1 发表于 2015-11-19 16:34
IP绑定问题, 比如, iis有时候, 就默认bind一个ip, 改成bind到0.0.0.0就行了.
可是在内网两个站都能上,但是在外网就不行了啊。
另外这块儿我还是不太明白,如何修改bind?
netxiao1 发表于 2015-11-19 16:35
iis中没有设置b网站吧? 都是在tomcat中设置的? 如果是tomcat中设置的, tomcat启动没有? 跟踪看一下log就 ...
乙站没有在IIS中设置。
IIS中只有甲站。
乙站用的是tomcat的默认设置,而且tomcat已经启动。
常盘台警卫 发表于 2015-11-19 16:45
乙站没有在IIS中设置。
IIS中只有甲站。
乙站用的是tomcat的默认设置,而且tomcat已经启动。
tomcat中也有bind ip设置的, 任何一个web服务器都有bind ip设置, 如果只bind 到内网ip的那张网卡, 外网当然访问不了.  

有可能当时配置的人就是这么想的, 不让外网访问, 所以改了tomcat的设置.
netxiao1 发表于 2015-11-19 16:49
tomcat中也有bind ip设置的, 任何一个web服务器都有bind ip设置, 如果只bind 到内网ip的那张网卡, 外网当 ...
在tomcat里面的文件中(……\tomcat\conf\server.xml)设定为:

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="false"
       xmlValidation="true" xmlNamespaceAware="true">

绑定的是localhost:8080.
=========================================
另外IIS那个(甲站)因为当年发生故障,重装系统的时候我参与过设定,那个绑定的是:IP地址为A,端口为80.(但是甲站里面外面都可以登录)

常盘台警卫 发表于 2015-11-19 17:00
在tomcat里面的文件中(……\tomcat\conf\server.xml)设定为:


localhost就是127.0.0.1, 我觉得你可以尝试把localhost改成0.0.0.0 试试, 或者改成外网ip试试.
因为你是双网卡, 不是nat方式, 没有看到路由之前不太好说是怎么回事.
改完重启tomcat服务.

从你外网可以访问A来看, 整个通道是打通了, 但还要看8080是不是被防火墙屏蔽了. 你可以把iis停掉, 把tomcat这个端口改成80试试.

常盘台警卫 发表于 2015-11-19 17:00
在tomcat里面的文件中(……\tomcat\conf\server.xml)设定为:


localhost就是127.0.0.1, 我觉得你可以尝试把localhost改成0.0.0.0 试试, 或者改成外网ip试试.
因为你是双网卡, 不是nat方式, 没有看到路由之前不太好说是怎么回事.
改完重启tomcat服务.

从你外网可以访问A来看, 整个通道是打通了, 但还要看8080是不是被防火墙屏蔽了. 你可以把iis停掉, 把tomcat这个端口改成80试试.
netxiao1 发表于 2015-11-19 17:34
localhost就是127.0.0.1, 我觉得你可以尝试把localhost改成0.0.0.0 试试, 或者改成外网ip试试.
因为你 ...
您好。
刚才我试了一下,您前面说的改IP的证实无效,网站无法打开;
至于改端口,网站是可以打开的。
这样是不是可以推断与防火墙端口未打开有关呢?
netxiao1 发表于 2015-11-19 17:34
localhost就是127.0.0.1, 我觉得你可以尝试把localhost改成0.0.0.0 试试, 或者改成外网ip试试.
因为你 ...
您好。
刚才我试了一下,您前面说的改IP的证实无效,网站无法打开;
至于改端口,网站是可以打开的。
这样是不是可以推断与防火墙端口未打开有关呢?
常盘台警卫 发表于 2015-11-19 16:32
外网的防火墙……
这样说问题不在我们办公室的这台服务器上,而是在我们公司的对外的网关上?
也就是说 ...
我不知道你们的网络拓扑结构,服务器与外网之间是不是有防火墙,如果有,要检查。

另外就是windows server本身的防火墙,你也要检查端口是否打开。
involute 发表于 2015-11-19 21:44
我不知道你们的网络拓扑结构,服务器与外网之间是不是有防火墙,如果有,要检查。

另外就是windows se ...

WINSERVER上面的防火墙端口例外我已经打开了。
由此看来,这个情况看来可能就是您说的外部防火墙的问题了,我和我们领导反映了这个问题,看领导下一步的计划了。
常盘台警卫 发表于 2015-11-19 20:14
您好。
刚才我试了一下,您前面说的改IP的证实无效,网站无法打开;
至于改端口,网站是可以打开的。
那就是8080这个端口被防火墙屏蔽了. 如果外部ip网卡是直接接外部ip的, 检查本机防火墙, 可以关闭防火墙试试.
如果是端口转发什么的, 就得检查网关的防火墙.


如果对外IP地址B是通过路由设备连接外网,且真正对外地址在路由设备上,则在路由设备防火墙上将地址B放入DMZ,如果外网能访问,则证明是外网至内网的端口映射未打开,将地址B移出DMZ,在防火墙规则中添加该端口映射即可。
如果放入DMZ不能访问,则问题可能出在tomcat的配置本身。

如果对外IP地址就是公网地址,看看防火墙规则啥的吧,然后再考虑tomcat配置问题

如果对外IP地址B是通过路由设备连接外网,且真正对外地址在路由设备上,则在路由设备防火墙上将地址B放入DMZ,如果外网能访问,则证明是外网至内网的端口映射未打开,将地址B移出DMZ,在防火墙规则中添加该端口映射即可。
如果放入DMZ不能访问,则问题可能出在tomcat的配置本身。

如果对外IP地址就是公网地址,看看防火墙规则啥的吧,然后再考虑tomcat配置问题
要分两步的,一个是服务,一个是网络
我做防火墙配置通常最高级别的一定是拦掉所有端口及所有IP,然后业务部门要哪个放开哪个
然后还有个映射问题,路由设置上做地址转换的时候,外部IP:8080端口要映射到服务器的8080端口,这样你在外网访问外部IP:8080才能正确到达服务器的8080端口
如果运气不好,外部IP:8080这个已经被其他部门占用了,那你只能用其他端口了,例如外部IP:8081,在外网访问外部IP:8081会打开服务器的8080端口