
2直接用ip地址访问(前提是一个网站独占服务器)试试行不,如果你事虚拟主机,那就要看自己的网页代码是否使用绝对路径,特别是带域名的路径,这样的方式,一旦域名解析不成功就会造成无法打开。
一个ip可以指向多个网站,一个域名也可以绑定多个ip。在访问网站时都是通过域名访问,在浏览器中输入对应的网站域名,然后通过dns服务器进行解析找到对应的主机地址,从而获取网站数据,而直接输入ip访问属于反向解析,由于网站开发者在一个主机ip上会存放多个网站资源所以在使用ip访问时无法查询到访问的是哪一个网站资源故而会无法打开。
一个ip可以指向多个网站,一个域名也可以绑定多个ip。在访问网站时都是通过域名访问,在浏览器中输入对应的网站域名,然后通过dns服务器进行解析找到对应的主机地址,从而获取网站数据,而直接输入ip访问属于反向解析,由于网站开发者在一个主机ip上会存放多个网站资源所以在使用ip访问时无法查询到访问的是哪一个网站资源故而会无法打开。
一、一个ip指向多个web站点
由于现在很多网站都是通过多个虚拟主机网站共享一个ip地址,每一个网站指向的路径,端口不同,在浏览器中直接输入ip地址时,浏览器无法找到ip相对应得主机是哪一个网站资源,故而会返回错误信息。而通过域名访问时,会通过host找到对应的主机名,从而查找到对应的访问地址。最终返回相对于的网站资源。所以当一个主机ip上只有一个网站时,是可以通过ip地址来访问网站,当一个ip指向了多个网站资源时,仅仅通过ip地址就无法确定用户访问的是主机上那个网站资源。
如下图中设置的nginx,其中一个网站的域名,端口及路径地址。
我们在浏览器中直接输入ip地址访问时,浏览器都会默认访问的是80端口,而在公网ip只绑定了一个主机时,虽然ip地址可以找到主机上的网站资源,但是网站页面所使用的端口并不是默认80端口,网站运营者在映射到公网ip时将80端口更改为其他端口。所以在浏览器中直接输入ip地址也会造成无法访问。
访问一个网站时,首先向dns解析服务器发送请求,通过解析找到对应的主机地址,然后再主机地址的web服务器中找到对应的访问路径,数据返回到浏览器上。然而有些一个ip对应一个网站资源的网站,那么就可以直接通过ip来访问主机资源,无需在主机中绑定域名,这样就会被其他恶意解析的人员把别人的域名解析到自己的网站上,最后造成不必要的损失。所以一些网站都会禁止掉直接输入IP地址来访问网站。
所以当一个ip对应多个web站点时,单单通过一个ip地址时无法匹配到用户需要访问的是哪一个web站点故而是无法正常访问的,然而通过域名,就能在主机的host文件中找到需要访问的是哪个web站点,从而返回正确的网站数据。如果一个ip只对应一个web站点,那么网站开发者也许禁止反向解析。会屏蔽掉ip地址直接访问,或者更改web默认端口。
两种原因:1你使用域名的方式打开网页,因为域名是靠dns来解析滴,必须重修修改域名的a记录到改过的ip地址上面。2直接用ip地址访问(前提是一个网站独占服务器)试试行不,如果你事虚拟主机,那就要看自己的网页代码是否使用绝对路径,特别是带域名的路径,这样的方式,一旦域名解析不成功就会造成无法打开。一般处理方式:
更换新的DNS服务器,或者等待出现故障的DNS服务器工作正常。有时没有提示,只说是无法连接到服务器。如果DNS服务器出现故障,一部分网页能正常打开,另一部分网页不能正常打开,出现此种情况的话,可以修改你的DNS服务器,如果有两个DNS服务器,你可以把首选DNS服务器和备用DNS服务器数据调换一下试试看。右击“网上邻居”→属性→右击本地连接→属性→Internet 协议(TIC/IP)→属性→选择自动获取DNS服务器(这是最佳选择)。也可以自己设置DNS服务器数据。设置了IP地址以及子网掩码的话这里也可以保持空白不填写。当然如果你能准确知道你们当地的DNS数据最好填写进去。
下面技巧参考:
方法一:开始→运行→cmd→regsvr32 actxprxydll→确定→提示→actxprxydll中DllRegisterServer成功→确定。然后再次→运行→regsvr32 shdocvwdll→确定。
方法二:修复TCP/IP网络连接:开始→运行→cmd→输入→netsh int ip reset→命令后会回车→ipconfig /flushdns来重建本地DNS缓存→重新启动计算机后IE与网络连接已修复。
方法三:HOSTS文件被修改 文件位置 C:\WINDOWS\system32\drivers\etc 把hosts用记事本打开,内容清空,只保留 127001 localhost 这一个条目。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)