public static ReverseProxyMiddleware::setSettingsOnRequest(Request $request, Settings $settings)
Sets reverse proxy settings on Request object.
Parameters
\Symfony\Component\HttpFoundation\Request $request: A Request instance.
\Drupal\Core\Site\Settings $settings: The site settings.
File
- core/lib/Drupal/Core/StackMiddleware/ReverseProxyMiddleware.php, line 58
Class
- ReverseProxyMiddleware
- Provides support for reverse proxies.
Namespace
Drupal\Core\StackMiddleware
Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | public static function setSettingsOnRequest(Request $request , Settings $settings ) { // Initialize proxy settings. if ( $settings ->get( 'reverse_proxy' , FALSE)) { $ip_header = $settings ->get( 'reverse_proxy_header' , 'X_FORWARDED_FOR' ); $request ::setTrustedHeaderName( $request ::HEADER_CLIENT_IP, $ip_header ); $proto_header = $settings ->get( 'reverse_proxy_proto_header' , 'X_FORWARDED_PROTO' ); $request ::setTrustedHeaderName( $request ::HEADER_CLIENT_PROTO, $proto_header ); $host_header = $settings ->get( 'reverse_proxy_host_header' , 'X_FORWARDED_HOST' ); $request ::setTrustedHeaderName( $request ::HEADER_CLIENT_HOST, $host_header ); $port_header = $settings ->get( 'reverse_proxy_port_header' , 'X_FORWARDED_PORT' ); $request ::setTrustedHeaderName( $request ::HEADER_CLIENT_PORT, $port_header ); $forwarded_header = $settings ->get( 'reverse_proxy_forwarded_header' , 'FORWARDED' ); $request ::setTrustedHeaderName( $request ::HEADER_FORWARDED, $forwarded_header ); $proxies = $settings ->get( 'reverse_proxy_addresses' , array ()); if ( count ( $proxies ) > 0) { $request ::setTrustedProxies( $proxies ); } } } |
Please login to continue.