如果您在Heroku上,则可能已经注意到,当您有分页链接时,它是通过HTTP发出的。这是一个问题,因为当您尝试访问该页面时,由于这些链接不在HTTPS中,因此会出现“混合内容”错误。您如何解决这个问题?
答案 0 :(得分:0)
这是Heroku的负载平衡系统的副作用。 Heroku设置了X-Forwarded-Proto
头,但是Laravel needs some minor configuration可以正确处理它。这由fideloper/proxy
包(从v5.5起内置在Laravel中)处理。首先,发布配置文件:
php artisan vendor:publish --provider="Fideloper\Proxy\TrustedProxyServiceProvider"
然后,在生成的config/trustedproxy.php
文件中:
'proxies' => '*',
您的应用现在应该正确反映HTTP / HTTPS状态。 (作为额外的奖励,您还将为用户获得正确的IP地址,而不是Heroku负载平衡器的内部IP。)
答案 1 :(得分:-1)
要解决此问题,您只需进入AppServiceProvider.php并在启动方法中添加以下内容:$this->app['request']->server->set('HTTPS','on');