当前位置: 首页 > 知识库问答 >
问题:

将公共路径添加到Laravel中的资产路径

罗智刚
2023-03-14

我想在共享主机中安装laravel,我遵循了这里的步骤https://stackoverflow.com/a/28449523 但是我的资产路径不包括公共目录

而不是这个

<link href='http://example.com/public/assets/css/style.css' type='text/css' media='all' />

我明白了

<link href='http://example.com/assets/css/style.css' type='text/css' media='all' />

如何在不更改任何核心类的情况下更改资产文件夹的目录(将public添加到资产)?

共有3个答案

卓嘉良
2023-03-14

第5.7.14节之前

请查看illumb\Routing\UrlGenerator类及其资产($path,$secure=null)方法。通过url键将此类放入容器。您可以做的是:

  1. 添加您自己的类,扩展UrlGenerator

通过这种方式,您根本不需要接触核心文件,并且您的Laravel应用程序仍然可以进行更新。

Laravel 5.7.14及更高版本的更新

与其他答案一样,还有ASSET\u URL.env选项,这使得更改公共路径变得更加容易。Laravel在Laravel 5.7.14中引入了它,该版本在我最初的答案发布大约3年后发布。

禹德水
2023-03-14

对于Laravel-Laravel 5.8的最新版本,在config/app.php中有一个名为asset_url的键。此键的值决定了Asset()方法返回的值。通常,如果您的所有资产文件夹都在默认位置(默认位置是Laravel安装根目录下的公共文件夹),您应该将此键的值设置为网站的基本url。

例如,如果您的网站url为“https://www.example.com“如果要访问根文件夹下的资产路径public/assets/css/sample.css,请在config/app.php中设置资产url,如下所示:

'asset_url' => env('ASSET_URL', 'https://www.example.com'),
李经国
2023-03-14

在你的. env文件中添加ASSET_URL=Public并运行php artisan config: ache

 类似资料:
  • 我正在使用 karaf 4.0.5 和 osgi 进行一个项目。我们有客户端代码来调用 REST API,这需要加载 3 个“*.属性”文件。我得到了一个客户端jar,我用它来调用服务器端类和方法(包含我无法更新的代码)。所需的属性文件存在于提供的客户端 jar 中,但其代码仍无法找到并加载它们。 在调试我的pax考试时,我发现它没有从jar加载资源文件的可能原因如下。 用于加载文件的代码似乎仅尝

  • 并且同样尝试了“/mnt/sdcard/android/data/”甚至失败了。 哪条路径用于存储公共信息?

  • 问题内容: 我想在Linux PATH中添加一个小脚本,因此不必在实际放置在磁盘上的地方实际运行它。 该脚本非常简单,它是关于通过代理赋予apt-get访问权限的,我使它像这样: 然后,我将其保存为apt-proxy.sh,将其设置为+ x(chmod),当我位于该文件所在的目录中时,一切正常。 我的问题是:如何将此 apt-proxy 添加到 PATH, 以便实际上可以将其称为真正的apt-ge

  • 问题内容: 我试图找出为什么找不到使用using安装的我和/或包装器。我认为是因为它没有添加到我的PATH中: 和: 我安装使用PIP和使用,没有任何问题。我尝试重新安装,但这也没有用。我如何知道要添加的路径?只是似乎安装到的路径?那似乎是: 我还找到了本指南,该指南建议: 但是,这并不能帮助我运行。我在Mac OSX 10.7.5(Lion)上。 问题答案: 似乎我自己是几乎所有“简单”安装过程

  • 我有一个过滤器: 如果不是WebFlux,那么我会这么做: 但这是不可能做到这一点,因为请求身份过滤器实现WebFilter... 如何使用WebFilter Spring WebFlux指定过滤器的必要路径?

  • 我想在linux路径中添加一个小脚本,这样我就不必在磁盘上实际运行它。 这个脚本非常简单,是关于通过代理提供apt-get访问权限的,我是这样做的: 然后我将其保存为apt代理。sh,将它设置为x(chmod),当我在这个文件所在的目录中时,一切都正常工作。 我的问题是:如何将这个apt-代理添加到PATH中,这样我就可以实际调用它,就好像它是真正的apt-get一样?[从任何地方] 寻找命令行唯