W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
如果你的應(yīng)用程序運(yùn)行在失效的 TLS / SSL 證書(shū)的負(fù)載均衡器后,你可能會(huì)注意到你的應(yīng)用程序有時(shí)不能生成 HTTPS 鏈接。通常這是因?yàn)槟愕膽?yīng)用程序正在從端口 80 上的負(fù)載均衡器轉(zhuǎn)發(fā)流量,卻不知道是否應(yīng)該生成安全鏈接。
解決這個(gè)問(wèn)題需要在 Laravel 應(yīng)用程序中包含 App\Http\Middleware\TrustProxies
中間件,這使得你可以快速自定義應(yīng)用程序信任的負(fù)載均衡器或代理。你的可信代理應(yīng)該作為這個(gè)中間件的 $proxies
屬性的數(shù)組列出。除了配置受信任的代理之外,還可以配置應(yīng)該信任的代理 $header
:
<?php
namespace App\Http\Middleware;
use Fideloper\Proxy\TrustProxies as Middleware;
use Illuminate\Http\Request;
class TrustProxies extends Middleware
{
/**
* 此應(yīng)用的信任代理
*
* @var string|array
*/
protected $proxies = [
'192.168.1.1',
'192.168.1.2',
];
/**
* 應(yīng)被用于偵測(cè)代理的headers配置
*
* @var int
*/
protected $headers = Request::HEADER_X_FORWARDED_ALL;
}
技巧:如果你使用 AWS 彈性負(fù)載平衡,你的
$header
值應(yīng)該是Request::HEADER_X_FORWARDED_AWS_ELB
。如果您想查看更多可用于 $headers 的屬性信息,請(qǐng)查閱 Symfony 的文檔 信任代理。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: