如果同一个 IP 对应了 N 个网站,那么如何通过 IP 访问网站?

2016-12-12 18:25:50 +08:00
 sheldor
  1. 改 HOSTS 可以吗?
  2. 有没有更简单的办法?比如使用浏览器插件扩展什么的?
  3. 是不是需要修改浏览器的请求头之类的?
  4. 我的专业、职业跟计算机互联网之类的完全没关心纯好奇, dns 解析完了最终不还是 IP 地址吗?
2192 次点击
所在节点    问与答
11 条回复
misaka19000
2016-12-12 18:31:21 +08:00
HTTP 头部会附带域名信息的,根据请求头部的域名来进行判断就行了
Nginx 服务器就附带这种功能
haitang
2016-12-12 18:42:07 +08:00
1. 可以,前提是你写在 hosts 文件内的域名与 IP 对应
2. 自建 DNS ,自行解析,软件自备
3. 浏览器访问域名,会自动 Web 服务器发送带有 Host: domain.com 头的请求,不需要关心
4. 一个例子
webdev
2016-12-12 18:42:11 +08:00
所有 webserver 几乎都会根据头去找文件 这你不用担心 配置问题而已
sheldor
2016-12-12 19:09:55 +08:00
@haitang
@misaka19000
@webdev
谢谢你们的回复
还有一个问题就是,如果一个网站,它的域名解析被 gfw 干掉了,那么有没有办法通过 IP 直接访问呢?尤其是同一个 IP 对应了很多网站的情况下,也是改 HTTP 请求头吗?有没有现成的工具呢?因为我不是干这个的所以问题有点多,见谅!
majinjing3
2016-12-12 19:17:56 +08:00
@sheldor 域名被墙,就换域名, ip 被墙换 ip ,如果是提供服务给别人的话,当然,如果是自用,随意折腾都行,
Tuisku
2016-12-12 19:18:21 +08:00
@sheldor
很大一部分被依据相关法律法规禁止访问的网站会连 IP 一起 ban 掉。
但是你可以用其他 IP 去反代。
lxy
2016-12-12 20:17:55 +08:00
Nginx 可以单独分开处理不带 Host 头的、直接访问 IP 的,同一 IP 下其它网站不受影响。

# 处理无 Host 头请求
server {

listen 80;

server_name "";

return 404;

}

# 处理 IP 访问

server {

listen 80;

server_name _;

return 404;

}
haitang
2016-12-12 22:01:04 +08:00
@sheldor 通过 IP 直接访问是指的空主机头访问, Web 服务器如果有这个设置可以直接访问 IP 。
但是如果 IP 被干扰这个方法是行不通的。

Web 服务只认 Host 头,除非你有服务器控制权,可以随意设置,否则不要想了。
msg7086
2016-12-13 02:44:13 +08:00
gfw 解析被干的话,直接本地做一下解析就好了(也就是直接写 hosts 就好了),没那么多麻烦事。
yimity
2016-12-13 09:42:04 +08:00
我感觉大部分人都没有明白人家问的是什么。
yu1u
2016-12-13 15:08:11 +08:00
需要在服务器例如: IIS/Apache/Nginx 里面配置主机头为 IP 就行了,通过 IP 指向特定网站的目录,其他网站绑定的是域名,从域名访问过来的就指向绑定域名的目录。
@yimity

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/327122

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX