解决外网通过IP无法访问自己搭建的网站(云服务器)

  • A+
所属分类:WordPress 腾讯云

请从以下几个方面去查找问题所在

1、检查WEB服务是否有正常启动

2、防火墙是否允许对应的端口,安全组是否屏蔽了对应端口

3、域名解析是否生效,是否绑定到主机

 

本文以腾讯云为例进行讲解。

我买了腾讯云的云服务器,用xmapp安装了apache和mysql服务,并基于xmapp配置了wordpresss,开始个人博客的制作,使用localhost可以进行个人网站的访问,但是使用ip形式却无法访问,无论公网还是内网都无法访问,连127.0.0.1都无法访问,这让我觉得很奇怪,摸不着头绪。开始以为是wordpresss的问题,研究了很久也没成功,后来,发现xmapp的apache默认的网页通过ip也无法访问,这才将问题定位到xmapp上面,经过了很久的研究,试了各种各样的办法,依然没有实现使用ip访问xmapp,我开始觉得问题可能不是xmapp,总感觉是云服务器阻止了请求,终于,在无法访问网页的时候,尝试点击了下图中的“修复连接问题”

解决外网通过IP无法访问自己搭建的网站(云服务器)

得到如图结果

解决外网通过IP无法访问自己搭建的网站(云服务器)

这让我才最终将问题定位到端口上,应该是云服务器的端口没打开,导致网络不通畅。

 

解决问题最重要的是定位问题,我在解决这个问题的时候,定位问题的方法存在不足,我采用的是从上层应用到底层物理的方向去查找问题,其实正确的方向应该是从底层物理到上层应用,具体步骤如下:

1、检查ip访问是否通畅。ping 云服务器的ip,看是否可以ping通,一般云主机为了防止别人入侵,会进行防ping设置,这个时候可以暂时关闭防ping设置,看本机到云主机是否可以ping通。

 

2、检查端口是否打开。假设我们要看192.192.193.211这个IP的22端口是否打开,则运行telnet 192.192.193.211 22 来查看,远程连接功能的端口是3389,云服务器的这个端口默认是打开的,如果不确定该语句是否正确,可以用ip加3389这个端口进行验证,windows的telnet 默认是没安装的,只要去勾选安装即可,非常简单。我在定位问题时,发现8088端口不通,于是就知道了是端口未打开的原因。由于80端口是很多第三方应用的默认端口,因此,我将apache和wordpress的端口都改为了8088,使用telnet 命令验证8088端口,不通畅。不通畅的原因有两个:(1)云服务器设置了安全组(2)云服务器的防火墙。云服务器的端口管理的比较严,绝大部分端口默认是关闭的,默认只开通了进行远程桌面连接的3389端口,因此,需要将大部分端口进行开放,具体参照“关于腾讯云服务器 无法访问外网网站 无法通过ip访问”,当然,如果需要可以被外网访问,还需要记得关闭云服务器的防火墙(或者设置进出站规则)。

 

3、检查网站服务是否正常启动。我安装的xmapp服务只有mysql和apache服务,这可以通过windows的服务界面直接查看

解决外网通过IP无法访问自己搭建的网站(云服务器)

Qt大课堂-QtShare

发表评论

您必须登录才能发表评论!