Symfony 4 и FOSJsRoutingBundle ОК в dev env, но KO в prod env (Маршрутизация не определена) - PullRequest
1 голос
/ 03 апреля 2019

В symfony 4 я использовал пакет jsrouting для получения пути маршрута Symfony из кода JS. В среде dev все работает нормально, но когда я устанавливаю конфигурацию Symfony на prod mod, я получаю эту ошибку, когда загружаю страницу, где один из моих скриптов javascript использует jsrouting:

enter image description here

(ошибка произошла в пользовательском файле JavaScript global.js, используемом моей страницей)

Мой файл ветки содержит следующие строки:

<script src="{{ asset('bundles/fosjsrouting/js/router.js') }}"></script>
<script src="{{ path('fos_js_routing_js', { callback: 'fos.Router.setData' }) }}"></script>
<script src="{{ asset('build/js/us/builder/global.js') }}"></script>
  • Я установил переменную APP_ENV в dev в файле .env: при загрузке страницы из отладчика браузера я вижу:

enter image description here

  • Но если я установлю переменную APP_ENV на prod в файле .env: при загрузке страницы из отладчика браузера я вижу:

enter image description here

Я не понимаю, почему, когда я перехожу в режим prod, эти две строки:

<script src="/*****/public/bundles/fosjsrouting/js/router.js"></script>
<script src="/*****/public/js/routing?callback=fos.Router.setData"></script>

отсутствуют ... и именно поэтому я получил ошибку "Маршрутизация не определена", потому что "Маршрутизация" определена в файле router.js.

Я не понимаю, почему эти строки отсутствуют, когда Symfony находится в среде prod

Содержимое моего конфигурационного файла /myproject/config/bundles.php:

<?php

return [
    //...
    FOS\JsRoutingBundle\FOSJsRoutingBundle::class => ['all' => true],
];

РЕДАКТИРОВАТЬ Вывод некоторых консольных команд:

enter image description here

1 Ответ

0 голосов
/ 12 июня 2019

Внимательно посмотрите на свои каталоги var, разрешение подкаталогов и владельца.

php bin/console cache:pool:clear cache.global_clearer
chmod -R 777 var/log

поставить правильного владельца для каталога prod:

cache/prod
...