我试图获取主机访问我的网站Express.js,我使用下面的代码req.headers.host在Express.js返回127.0.0.1
app.get('/', function(req,res){
console.log(req.headers.host)
});
尽管此代码返回127.0.0.1:1000
这是正确的端口,但它不是访问它的外部地址,为什么会发生这种情况?
感谢
我试图获取主机访问我的网站Express.js,我使用下面的代码req.headers.host在Express.js返回127.0.0.1
app.get('/', function(req,res){
console.log(req.headers.host)
});
尽管此代码返回127.0.0.1:1000
这是正确的端口,但它不是访问它的外部地址,为什么会发生这种情况?
感谢
并不是每一个客户端主机名,如this other question表示你可以尝试用下面的代码获取客户端的IP地址,但:
req.headers ['X-forwarded-为'] || req.connection.remoteAddress
我想获取网站上请求的网址,因为我需要获取subdomain.domain.com,而不是客户端IP –
您或者将浏览器直接指向http://127.0.0.1:1000
或者您正在使用本地反向代理。在第二种情况下,您的代理必须配置为设置正确的主机头。
无论您的服务器在哪里,它都可能位于未通过所有请求标头的网络设备之后。控制整个req.headers对象并查看正在传递的内容。 – Geuis