网站通过域名可以访问而使用IP地址却无法访问,这是什么原因?
作为网站管理者,必须要了解一些http、服务器相关的知识,那么今天小编给您讲述一下网站为什么通过域名可以访问而使用IP却无法访问,这究竟是什么原因呢?
问题的前提是,需要更改host访问网站,且更改后能成功访问,说明DNS不能获得正确的IP地址,但通过正确的IP地址可以连接到正确的服务器上。
种可能:
假如是一次单纯的http请求,指定host用域名访问和直接输入ip地址访问,效果应当是一样的,但于一次请求。现如今,当你打开一个网页,事情会变得复杂很多,网页不光是一个html,还有许多css样式、javascript脚本、其他网页元素(Flash等)需要下载,执行js脚本或Flash插件的时候,还会进行新的网络请求。
html里包含的css、js资源地址,以及js脚本发出的网络请求地址,可能是用域名记录的(而非IP地址)。假如是改host的方式,那么你的系统知道,这个域名对应正确的IP地址,可顺利访问。如果是没有host,输入IP访问,那么对于网页资源、脚本中的域名地址,系统不知道这个域名是你输入的IP,仍需要通过DNS获取IP地址,DNS有问题的话,不能正确加载。
防火墙很早只做DNS劫持、污染,通过域名得不到正确的IP,如果你ping一个网址,实际ping的是假的IP地址,可能是超时无响应,可能是错误的服务器的回应,但你ping它的IP地址,结果是正确的,所以改host有效。后来防火墙高级了,可以阻拦、劫持你的请求,那么怎么ping都会出问题。值得注意的是,仍有很多网站只有DNS污染,没有针对IP地址的行为(或网站IP地址在不断更新而防火墙的更新慢一拍),所以改host仍然有效。
第二种可能:
有些网站服务器端程序需要通过你的URL来决定返回的内容(可能一个IP地址上的服务器需要同时提供两个网站的访问),那么你的URL中不包含正确的域名,服务器程序没办法回应你(不知道你要访问的到底是什么),只好返回个错误。
如果用户可以补充网页错误的内容,很好是Chrome中的Developer Tools(F12键)中Network选项卡中的内容,或者提供网页URL地址、IP地址等,会对问题有很大的帮助。
上一篇: 找人做网站不能忽视的环节有哪些?
案例
热文推荐
- 喜报丨恭喜时代创信被认定为创新型中小企业2023-05-22
- 焕新时代 创信未来|时代创信品牌升级,全面焕新,打造「技术+服务」新篇章2023-05-12
- 喜讯 | 时代创信再次荣获“国家高新技术企业”称号2023-03-23
- 时代创信 | 打造元宇宙板块 赋能产业共发展2022-07-05
- 时代创信与人民网深度合作,助力人民网开展“全国青少年诵读党史故事”、“全国党史知识竞赛”活动2021-08-01
- 时代创信中标北京师范大学珠海校区教育创新网络平台建设项目2021-05-22
- 时代创信签约尼尔森网联媒介数据服务有限公司——打造融媒体大数据平台2021-05-14
- 时代创信签约氪空间——助力共享办公线上一站式服务2021-05-28
- 时代创信签约墨迹天气——助力未来智能与大数据融合发展2021-04-23
- 时代创信正式签约--“北大青鸟”职业教育微信小程序开发2021-04-23