Проблемы с развертыванием проекта Symfony на рабочем сервере

У меня есть вопрос о развертывании Symfony. Я борюсь с этим уже около 2 дней уже …

Что я делаю неправильно?

sudo rsync -avCz  --no-o --no-g --no-p --del --dry-run . [  PATH (private)  ]  --exclude 'web' --exclude '.htaccess' --exclude 'cgi-bin/'

После этого я запускаю эту команду без —dry-run

Когда я запускаю эту команду, проект разворачивается в нужном месте. Все идет нормально. (После этого я могу вручную скопировать веб-папку в папку public_html?)
После этого я захожу на сервер с помощью ssh и перехожу в папку, где находится мое приложение. Ну тогда я запускаю эти команды:

php app/console doctrine:schema:update --force   <-- to update my database
sudo php app/console assets:install ../public_html --symlink  <-- install assets
sudo php app/console assetic:dump --env=prod --no-debug --force <-- dump assets
php -d memory_limit=256M app/console cache:clear --env=prod --no-debug <-- clear cache

Я также проверил, есть ли ссылки в app.php

Когда я захожу на веб-ссылку, я вижу пустую страницу. Может кто-нибудь, пожалуйста, помогите мне?

0

Решение

Предполагая, что вы правильно настроили vhost, пустая страница, скорее всего, является внутренней ошибкой сервера. Я предлагаю вам проверить журнал apache2 для этого проекта и журнал symfony2 (app / logs) для более подробной информации.

Судя по предоставленной вами информации, похоже, у вас есть проблемы с разрешениями. Вы запускаете консольные команды как пользователь sudo, поэтому для всех сгенерированных файлов потребуется root-доступ, если только вы автоматически не установите разрешения для вновь создаваемых файлов.

Попробуйте установить: sudo chown -R www-data:www-data project/

Также проверьте файл parameters.yml, если у вас есть правильная конфигурация базы данных для этой среды.

Вот простой сценарий развертывания оболочки, который я иногда использую, когда PHPCI (непрерывная интеграция) недоступна. Он не выполняет обновления базы данных, он просто копирует проект из репозитория git и выполняет основные команды. Я надеюсь, что вы найдете это полезным.

rm -rf /var/www/project.com
git clone --depth 1 [email protected]:sample/repo.git /var/www/project.com
cd /var/www/project.com
php /usr/local/bin/composer.phar install --optimize-autoloader --no-interaction
cp /home/user/deployment/parameters.yml /var/www/project.com/app/config/parameters.yml
cp -r /home/user/deployment/media /var/www/project.com/web/media
php /var/www/project.com/app/console cache:clear --env=prod --no-debug
php /var/www/project.com/app/console assetic:dump --env=prod --no-debug
sudo chmod -R 775 /var/www/project.com/app/cache
sudo chmod -R 775 /var/www/project.com/app/logs
sudo chown -R www-data:www-data /var/www/project.com
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]