2018-06-12 18:49:52 +00:00
|
|
|
<?php
|
|
|
|
|
2020-01-16 18:14:05 +00:00
|
|
|
$proxyString = env('TRUST_PROXIES', '');
|
|
|
|
|
|
|
|
if ($proxyString == '*' || $proxyString == '**') {
|
|
|
|
$proxies = $proxyString;
|
|
|
|
} else {
|
|
|
|
$proxies = explode(',', $proxyString);
|
|
|
|
}
|
|
|
|
|
2018-06-12 18:49:52 +00:00
|
|
|
return [
|
|
|
|
/*
|
|
|
|
* Set trusted proxy IP addresses.
|
|
|
|
*
|
|
|
|
* Both IPv4 and IPv6 addresses are
|
|
|
|
* supported, along with CIDR notation.
|
|
|
|
*
|
|
|
|
* The "*" character is syntactic sugar
|
|
|
|
* within TrustedProxy to trust any proxy
|
|
|
|
* that connects directly to your server,
|
|
|
|
* a requirement when you cannot know the address
|
|
|
|
* of your proxy (e.g. if using Rackspace balancers).
|
|
|
|
*
|
|
|
|
* The "**" character is syntactic sugar within
|
|
|
|
* TrustedProxy to trust not just any proxy that
|
|
|
|
* connects directly to your server, but also
|
|
|
|
* proxies that connect to those proxies, and all
|
|
|
|
* the way back until you reach the original source
|
|
|
|
* IP. It will mean that $request->getClientIp()
|
|
|
|
* always gets the originating client IP, no matter
|
|
|
|
* how many proxies that client's request has
|
|
|
|
* subsequently passed through.
|
|
|
|
*/
|
2020-01-16 18:14:05 +00:00
|
|
|
'proxies' => $proxies,
|
2018-06-12 18:49:52 +00:00
|
|
|
];
|