在CloudFlare后面的Laravel上从HTTP迁移到HTTPS

Cyb*_*ova 5 php cloudflare laravel laravel-5.2

我在laravel 5.2上有一个应用程序.它在HTTP上运行正常.

我使用asset函数生成完整的URL而不是使用相对的

<link rel="stylesheet" type="text/css" href="{{ asset('/css/bootstrap.min.css') }}">
Run Code Online (Sandbox Code Playgroud)

根据此处的 laravel文档,该asset方法会自动检测请求协议并相应地生成URL.

现在应用程序没有在HTTPS上运行,我可以secure_asset用于HTTPS URL,但随后它将停止在HTTP上运行localhost.

我知道有一些我缺少的东西,使用它从HTTP迁移到HTTPS并不是那么困难 laravel

PS - Cloudflare用于处理HTTPS请求.

Cyb*_*ova 5

到目前为止给出的所有答案都是正确的但没有解决我的问题

主要问题是我的申请落后了 CloudFlare

Laravel通过检查HTTP标头检测到一个安全或不安全的请求,$_SERVER['REQUEST_SCHEME']即使由于cloudflare,请求仍然是HTTPS,这仍然是HTTP.

CloudFlare为同一个设置不同的标头,即$_SERVER['HTTP_X_FORWARDED_PROTO']必须检查哪个标头以检测请求是否安全

下面这个文章,并无需对以前的应用程序代码进行任何更改作出一些改变这个我成功地设法生成HTTPS URL.

  • 您的网址不再有效...可悲 (2认同)