Как заставить laravel вывести localhost: 3000 in {{url ('/')}} для работы браузера? - PullRequest
0 голосов
/ 02 апреля 2019

Я предполагаю, что команда {{ url('/') }} в шаблонах блейдов дает IP-адрес сервера? Таким образом, в доменной (производственной) среде он работает хорошо: "https://example.com".

Но в локальной среде, работающей под browsersync, все ссылки, созданные командой 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>

Не повезло тоже.

Конфигурация Browsersync:

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

Хост-файл:

192.168.10.30 mytest.test

Ответы [ 2 ]

0 голосов
/ 02 апреля 2019

при попытке обслуживать приложение, а не обслуживать его напрямую, используйте вместо этого

php artisan serve --host=127.0.0.1 --port=3000
0 голосов
/ 02 апреля 2019

Вы всегда можете использовать самый примитивный метод. Откройте файл vendor / symfony / http-foundation / Request.php и найдите функцию getHttpHost.

Вместо возвращения $this->getHost().':'.$port; пиши что хочешь.

...