编辑hosts文件redirecturl?

我知道你可以编辑一个主机文件来将URLredirect到一个IP地址,如下所示:

127.0.0.1 google.com

但你如何强制redirect到一个URL而不是一个IP地址?

例如

mysite.com/welcome.aspx google.com

明确的URL不起作用,并假设mysite.com的IP是222.222.222.222,以下不工作:

222.222.222.222/welcome.aspx google.com

不,但你可以打开一个web服务器,例如,127.0.0.77,并使用它来检查请求的URI是“/ welcome.aspx”…如果是重定向到谷歌,如果不加载原来的网站。

127.0.0.77 mysite.com 

你不能。 重定向需要Web服务器接受第一个请求并发回重定向。 “主机”文件只是让你设置自己的DNS记录。

应用这个技巧。

首先你需要你想重定向到的url的IP地址。 可以说你想重定向到stackoverflow.com要找到它,请在命令提示符下使用ping命令。 输入:

 ping stackoverflow.com 

进入命令提示符窗口,您将看到stackoverflow的数字IP地址。 现在使用该IP到您的主机文件

104.16.36.249 google.com

现在是谷歌正在服务stackoverflow 🙂

主机文件:

 1.2.3.4 google.com 

1.2.3.4 – 你的服务器的ip。

在服务器上运行脚本,将用户重定向到所需的url。

您可以在Apache中使用RedirectMatch指令来执行类似的操作。

这很简单。

RedirectMatch / http://222.222.222.222/

无论如何,我看不出有什么理由去做这件事。 你不是想拦截交通吗? 有更好的方法。 对于作为路由器的Linux机器:iptables -j REDIRECT + Squid或Apache。 对于思科路由器,您可以将WCCP用于缓存或Web服务器…