HTTP/HTTPS mixed content errors #612 (#613)

* Configure TrustProxies middleware
* Add trusted proxies to deps
* Replace jquery request with axios request code
* Trust current user IP for forwarded headers
* Update dependencies
* Downgrade self-updater package for PHP 7.2
This commit is contained in:
Nabeel S
2020-03-03 10:20:13 -05:00
committed by GitHub
parent dcf9f48364
commit 89481b5fa1
26 changed files with 219 additions and 191 deletions

View File

@@ -7,6 +7,7 @@ use App\Http\Middleware\EncryptCookies;
use App\Http\Middleware\InstalledCheck;
use App\Http\Middleware\JsonResponse;
use App\Http\Middleware\RedirectIfAuthenticated;
use App\Http\Middleware\TrustProxies;
use App\Http\Middleware\UpdatePending;
use Illuminate\Auth\Middleware\Authenticate;
use Illuminate\Auth\Middleware\Authorize;
@@ -23,6 +24,7 @@ use Illuminate\View\Middleware\ShareErrorsFromSession;
class Kernel extends HttpKernel
{
protected $middleware = [
TrustProxies::class,
CheckForMaintenanceMode::class,
TrimStrings::class,
ConvertEmptyStringsToNull::class,

View File

@@ -0,0 +1,40 @@
<?php
namespace App\Http\Middleware;
use Closure;
use Fideloper\Proxy\TrustProxies as Middleware;
use Illuminate\Http\Request;
class TrustProxies extends Middleware
{
/**
* The trusted proxies for this application.
*
* @var array|string
*/
protected $proxies;
/**
* The headers that should be used to detect proxies.
*
* @var int
*/
protected $headers = Request::HEADER_X_FORWARDED_ALL;
/**
* Set the client as trusted
*
* @param \Illuminate\Http\Request $request
* @param \Closure $next
*
* @return mixed
*/
public function handle(Request $request, Closure $next)
{
$request->setTrustedProxies([$request->getClientIp()], $this->getTrustedHeaderNames());
$this->setTrustedProxyIpAddresses($request);
return $next($request);
}
}