Я просто хочу проверить, является ли клиент localhost
или нет. Если нет, я хочу, чтобы все статические запросы к файлам выдавали ошибку. Но это не так просто, как я думал.
Я испробовал все решения из здесь , здесь , здесь , здесь но не повезло.
Мой сервер работает на localhost: 11630, а интерфейс работает на staging.***.com
app.set('trust proxy', true);
app.use(function (req, res, next) {
console.log('req.get("origin"): ', req.get('origin'));
console.log('req.headers.host: ', req.headers.host);
console.log('req.headers.hostname: ', req.headers.hostname);
console.log('req.headers.origin: ', req.headers.origin);
console.log('req.headers.origin: ', req.headers.origin);
console.log('req.hostname: ', req.hostname);
console.log('req.ip: ', req.ip);
console.log('req.ips: ', req.ips);
console.log('req.headers["x-forwarded-for"] || req.connection.remoteAddress: ', req.headers['x-forwarded-for'] || req.connection.remoteAddress);
console.log('req.ipInfo: ', req.ipInfo);
next();
})
результаты:
req.get("origin"): undefined
req.headers.host: localhost:11630
req.headers.hostname: undefined
req.headers.origin: undefined
req.headers.origin: undefined
req.hostname: localhost
req.ip: ::1
req.ips: []
req.headers["x-forwarded-for"] || req.connection.remoteAddress: ::1
req.ipInfo: undefined
Результаты без app.set («доверенный прокси», true); :
req.get("origin"): undefined
req.headers.host: localhost:11630
req.headers.hostname: undefined
req.headers.origin: undefined
req.headers.origin: undefined
req.hostname: localhost
req.ip: ::1
req.ips: []
req.headers["x-forwarded-for"] || req.connection.remoteAddress: ::1
req.ipInfo: undefined
Может кто-нибудь дать совет?