3 namespace BookStack\Http\Middleware;
6 use Illuminate\Http\Middleware\TrustProxies as Middleware;
7 use Illuminate\Http\Request;
9 class TrustProxies extends Middleware
12 * The trusted proxies for this application.
19 * The headers that should be used to detect proxies.
23 protected $headers = Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO | Request::HEADER_X_FORWARDED_AWS_ELB;
26 * Handle the request, Set the correct user-configured proxy information.
28 * @param Request $request
29 * @param Closure $next
33 public function handle(Request $request, Closure $next)
35 $setProxies = config('app.proxies');
36 if ($setProxies !== '**' && $setProxies !== '*' && $setProxies !== '') {
37 $setProxies = explode(',', $setProxies);
39 $this->proxies = $setProxies;
41 return parent::handle($request, $next);