Laravel相对路径无法在本地主机上正常工作

Hannebaumsaway

我只是将Mac OS的本地apache2服务器用于本地主机。在我的httpd.conf文件中,

DocumentRoot "/Users/user_name/Local Sites/"

...该目录包含我在本地工作的所有网站:

Users
 -user_name
  --Local Sites
   ---site_1
   ---site_2
   ---site_3
   ---site_4

因此,对于我的特定Laravel项目site_1,我在.env中设置了以下内容:

APP_URL=http://localhost/site_1

...然后在config/app.php

'url' => env('APP_URL', 'http://localhost/site_1'),

但是,当我尝试使用Laravel的相对路径构建器之一时,它包含了我定义为文档的根目录和服务器的本地主机之上的整个路径例如:

public_path() = /Users/user_name/Local Sites/site_1/public

问题是,当我使用该变量链接到中的.js文件时public/js,生成的路径是

http://localhost/Users/user_name/Local%20Sites/site_1/public

...这当然是无效的,因为正确的路径是

http://localhost/site_1/public

我确定我在做一些愚蠢的事情,但是我太愚蠢了,无法弄清楚它是什么!当我明确解析这些路径时,我的网站可以工作,但是当我发布到Web主机时,所有内容当然都会中断(使用绝对路径而不是相对路径)。

乔纳森

不要混合使用辅助函数publich_path()和asset()。

您应该通过以下方式链接JS / CSS / Img:

<script src="{{asset('js/main.js')}}"/>

Laravel会将来电转换为

<script src="http://localhost/site_1/js/main.js"/>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章