Laravel 5帮助函数资产不同的域

时间:2015-11-05 01:02:06

标签: laravel laravel-5

在Laravel 5.0中,我使用辅助函数资产来显示不同资产的位置(css,js图像等)。我正在构建一个平台,根据网址显示不同的信息,这意味着我无法将资产绑定到网址。我知道在config / app.php中它有' url' => ' http://localhost'但我无法改变,因为网址并不总是一样的。有没有办法将其设置为在同一个应用程序中处理域更改?

1 个答案:

答案 0 :(得分:1)

假设您的资产始终与站点根目录(无论域名)处于相同的相对路径中,您应该能够将URL作为相对URL输出到各种资产。因此,例如,如果您的刀片模板中有类似的内容:

<link rel="stylesheet" href="{!! asset('css/style.css') !!}">

你可以用这样的相对URL替换它:

<link rel="stylesheet" href="/assets/css/style.css">

无论您使用哪个域,都应该正确解析,如果用户位于安全页面上,也应该通过HTTPS获取。

如果您需要更复杂的内容,可以考虑设置一个session('domain')变量或可从全局范围访问的内容,然后可以使用该变量生成指向资产的链接:

<link rel="stylesheet" href="http://{{ session('domain') }}/assets/css/style.css">

如果这些都不起作用,那么您的情况可能很复杂,以至于在我们提供可行的解决方案之前您需要提供更多代码。