【问题标题】:Problems with deploying symfony project to production server将 symfony 项目部署到生产服务器的问题
【发布时间】:2026-02-07 10:55:01
【问题描述】:

我有一个关于 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 文件夹中的 web 文件夹吗?) 之后,我使用 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 中的链接是否

当我访问网络链接时,我看到一个空白页面。有人可以帮帮我吗?

【问题讨论】:

  • 尝试tail /var/log/apache2/error.log,然后将您的日志发布到Pastbin
  • 没有输出的空白页面看起来像是内部服务器错误。看看你得到了什么(在 Firefox 或新的 IE 或 Chrome 中按 F12)

标签: php symfony deployment ssh production-environment


【解决方案1】:

假设您已正确配置虚拟主机,空白页很可能是内部服务器错误。我建议您查看该项目的 apache2 日志和 symfony2 日志(app/logs)以了解更多详细信息。

根据您提供的信息,您似乎有权限问题。您以 sudo 用户身份运行控制台命令,因此所有生成的文件都需要 root 访问权限,除非您自动为新创建的文件设置权限。

尝试设置:sudo chown -R www-data:www-data project/

同时检查 parameters.yml 文件,如果您对此环境有正确的数据库配置。

这是一个简单的 shell 部署脚本,当 PHPCI(持续集成)不可用时,我偶尔会使用它。它不执行数据库更新,只是简单地从 git 存储库复制项目并运行基本命令。我希望你会发现它有用。

rm -rf /var/www/project.com
git clone --depth 1 git@bitbucket.org: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

【讨论】:

    最近更新 更多