Этот перевод обеспечивается StrongLoop / IBM.
Этот документ может быть устаревшим по отношению к документации на английском языке. Последние обновления содержатся в документации на английском языке.При запуске приложения Express за прокси-сервером, необходимо указать (с помощью app.set()) для переменной приложения trust proxy одно из значений, приведенных в таблице ниже.
Хотя приложение будет запущено и без указания значения переменной приложения trust proxy, отсутствие заданного значения trust proxy приведет к некорректной регистрации IP-адреса прокси в качестве клиентского IP-адреса.
| Тип | Значение | 
|---|---|
| Булевский | 
         Если указано значение  Если указано значение   | 
    
| IP-адреса | 
         IP-адрес, подсеть или массив IP-адресов и подсетей, считающихся надежными. В приведенном ниже списке перечислены предварительно заданные имена подсетей: 
 IP-адреса можно задать любым из указанных ниже способов: 
        Если IP-адреса или подсети указаны, они исключаются из процесса определения адреса, и незащищенный IP-адрес, ближайший к серверу приложений, будет определен как IP-адрес клиента.  | 
    
| Число | 
         Считать защищенным   | 
    
| Функция | 
         Реализация нестандартного механизма защиты. Используйте этот метод, только если вы уверены в своих знаниях. 
       | 
    
Установка значения, отличного от false, для trust proxy ведет к трем существенным изменениям:
Значение req.hostname является производным от значения, указанного в заголовке X-Forwarded-Host, который может быть задан клиентом или прокси.
Заголовок X-Forwarded-Proto может быть задан обратным прокси-сервером и указывает приложению на использование протокола https, или  http, или даже недопустимого имени. Это значение отражается в req.protocol.
Значения req.ip и req.ips заполняются собой списком адресов, взятых из X-Forwarded-For.
Параметр trust proxy реализуется с помощью пакета proxy-addr. Дополнительная информация приведена в документации к нему.