代码之家  ›  专栏  ›  技术社区  ›  Fredrik

请求()在Laravel中不受负载平衡器和托管代理的保护

  •  0
  • Fredrik  · 技术社区  · 6 年前

    为什么 request()->isSecure() 返回 false

    request()->url(),          // "http://xx.xx"
    request()->isSecure(),     // false
    request()->getClientIps(), // XX.XX.XX.XX 
    

    TrustProxies (添加在 $middleware Http/Kernel.php ):

    protected $proxies = [
        'XX.XX.XX.XX', // exactly the same as in the logged data above
    ];
    

    在我的 AppServiceProvider boot()

    if (env('APP_ENV') == 'production') {
        \URL::forceScheme('https');
    }
    

    编辑:

    我也使用CyrdFLARE,并且我添加了所有的CyrdFlash代理。 $proxies

    X-Forwarded-Proto: http
    Cf-Visitor:        {"scheme":"https"}
    Referer:           https://xx.xx/someurl
    
    0 回复  |  直到 6 年前