symfony4 / sylius: сайт неправильно развертывается в рабочей среде - PullRequest
1 голос
/ 26 апреля 2020

Я разработал сайт на основе sylius на локальном сервере. Я хочу развернуть его в производственном процессе на моем сервере OVH.

В книге рецептов Sylius Sylius я не нашел какой-либо конкретной процедуры. Поэтому я следовал обычной процедуре.

  • Загрузите мой код на рабочий сервер с "git клоном" из моего git хранилища

  • Установить мои зависимости поставщика "php composer install" Но этот шаг не работает, потому что он никогда не заканчивается. В конце у меня всегда есть что-то вроде этого:

Executing script cache:clear
 [Symfony\Component\Process\Exception\ProcessTimedOutException]
  The process "'/usr/local/php7.3/bin/php' '--php-ini=/usr/local/php7.3/etc/php.ini' './bin/console' --ansi cache:clear" exceeded the timeout of 20000 seconds.

Я даже пробовал "composer clearcache" раньше. Это ничего не изменило.

Я сейчас пытаюсь "COMPOSER_PROCESS_TIMEOUT = 50,000". «composer установка» была отправлена ​​12 часов go и все еще не завершена ...

Кто-нибудь когда-либо имел эту проблему или знает, как найти решение? Есть ли особый шаг при работе с sylius? Потому что я действительно не знаю, что делать.

ОБНОВЛЕНИЕ: Мое главное преимущество на данный момент заключается в том, что проблема возникнет у sylius, потому что я пытаюсь создать новую установку sylius с такой структурой symfony 4

composer create-project sylius/sylius-standard

Тот же результат:

Выполнение кэша сценария: очистить [Symfony \ Component \ Process \ Exception \ ProcessTimedOutException] Процесс "' /usr/local/php7.3/bin/php '' - php -ini = / usr / local / php7 .3 / etc / php .ini '' ./bin/ консоль '--ansi cache: clear' превысила время ожидания 20000 секунд.

Я попытался запустить composer create-project с флагом --no-scripts и запустить php bin/console cache:clear отдельно после того. Ошибка появляется со второй командой.

1 Ответ

0 голосов
/ 29 апреля 2020

У меня была та же проблема с моим последним проектом 1.7. Проблема возникает из-за кеша: прогрев clear (возможно, потому, что у sylius куча зависимостей). Возможно, вы захотите отредактировать composer. json «сценарии» для:

"scripts": {
    "auto-scripts": {
        "cache:clear --no-warmup": "symfony-cmd",
        "assets:install %PUBLIC_DIR%": "symfony-cmd"
    },

или, как вы делали для обновления, запустите установку с флагом --no-script, за которым следует bin/console cache:clear --no-warmup (убедитесь, что вы устанавливаете активы после этого).

При первом посещении веб-сайта будет сгенерирован кэш, а не сгенерировано во время прогрева.

Это проблема не только при установке, вам придется использовать этот обходной путь каждый раз, когда вы хотите очистить кэш . Мой проект находится в производстве и работает хорошо, используя его, просто не забудьте посетить веб-сайт, как только вы это сделаете, чтобы случайный пользователь больше не загружался, поскольку кэш еще не был создан.

...