我尝试使用node-http-proxy将我的站点代理到另一个站点,例如google.com,只要我尝试github上的文档中给出的一些示例,而不是我的站点显示google.com的内容,它只是重定向到google.com,这是我正在使用的代码
var proxy = require("http-proxy");
var options = {
router: {
"myserver.com" : "google.com"
}
}
var proxyServer = proxy.createServer(options);
proxyServer.listen(80);我做错了,这只是为了反向代理?如果是,那么在node-http-proxy中允许我做常规的代理吗?
发布于 2012-05-08 07:38:55
因为google.com返回301重定向,所以它会将浏览器发送到不同的位置。在这种情况下,您可以只使用完整的url ( www.google.com ),它不会将301重定向发送回www.google.com。重要的是,由于google.com会发回一个301重定向,所以您必须使用重定向的网站来不重定向客户端。例如,如果您运行curl google.com,您将看到301重定向,而如果您只运行curl www.google.com,则不会显示重定向。
发布于 2012-05-08 16:40:34
尝试CodeRarity的答案给了我:
> curl www.google.com
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="http://www.google.co.uk/">here</A>.
</BODY></HTML>
>如你所见,根据你所在的位置,即使使用www.google.com,你也可能会得到一个重定向。
为什么不尝试不同的网站,而不是试图变得更聪明呢?
https://stackoverflow.com/questions/10490259
复制相似问题