作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
使用 asset
辅助函数如下:
<script src="{{ asset('/assets/js/jquery-2.1.1.min.js') }}"></script>
会得到
<script src="http://xxx.xxx.com/assets/js/jquery-2.1.1.min.js"></script>
有没有什么laravel内置的解决方案可以让它成为
<script src="//xxx.xxx.com/assets/js/jquery-2.1.1.min.js"></script>
并使用 http
和 https
协议(protocol)正确显示?
[编辑]
我知道 Laravel 通常会正确检测协议(protocol),但在负载均衡器后面时,它不会。所以我仍在寻找解决方案。
最佳答案
只有当请求被认为是安全的时候,Laravel 才会创建安全链接。
Laravel 已经有办法将来自“受信任的代理”的非 httpS 流量视为“安全”。
您可以像这样在您的应用程序服务提供商中声明此类受信任的代理:
Request::setTrustedProxies(array( '199.27.128.0/21', 'some other range'));
此外,请确保您的负载均衡器正确设置了以下 header :
Host, X-Forwarded-Host, X-Forwarded-Port, X-Real-IP, X-Forwarded-For and X-Forwarded-Proto
cloudflare 等“公共(public)”代理已经做到了这一点。
基本上这里的要点是客户端连接在其中一个前端服务器(充当代理)处终止,因此我们必须声明来自该服务器的通信是可信的,以便 laravel 使用来自代理服务器的 header 而不是值本地阅读。
这样做可以使 Request::isSecure() 或 Request::ip() 等函数返回一致的结果。
关于php - Laravel:无需协议(protocol)即可设置 Assets ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27563103/
这实际上是我问的问题的一部分here ,该问题没有得到答复,最终被标记为重复。 问题:我只需使用 @Autowired 注释即可使用 JavaMailSender。我没有通过任何配置类公开它。 @Co
我是一名优秀的程序员,十分优秀!