如何强制laravel在{{url('/')}}中输出localhost:3000,以使browsersync正常工作?

时间:2019-04-02 08:52:18

标签: laravel vagrant homestead browser-sync

我的假设是刀片模板中的{{ url('/') }}命令为服务器提供了IP? 因此,在域(生产)环境中,它可以很好地输出:"https://example.com"

但是在运行浏览器同步的本地环境中,laravel通过{{ url('/') }}命令创建的所有链接都将输出无用的IP地址192.168.10.30。一旦点击链接,浏览器同步就消失了。

如何仅在本地环境中强制laravel输出http://localhost:3000代替192.168.10.30

我试图在browserync配置中更改代理和主机。没有运气。

还将此脚本添加到了主要布局的php文件中:

    <script id="__bs_script__">
        // <![CDATA[
        document.write(
            "<script async src='http://HOST:PORT/browser-sync/browser-sync-client.js?v=2.23.6'><\/script>".replace(
                "HOST", location.hostname).replace("PORT", location.port));
        //]]>
    </script>

也没有运气。

浏览器同步配置:

   proxy: '192.168.10.30',
   open: false,
   notify: true,

主机文件:

192.168.10.30 mytest.test

2 个答案:

答案 0 :(得分:0)

您始终可以使用大多数原始方法。打开vendor / symfony / http-foundation / Request.php文件并查找getHttpHost函数。

反而返回 $this->getHost().':'.$port;写下您想要的任何内容。

答案 1 :(得分:0)

当尝试提供服务而不是直接提供服务时,请使用

check_login