我们正在尝试将我们的symfony项目部署到Heroku。 即使我们尝试访问时,构建也正确传递 项目页面我们只能看到一个空白页面。
Herolku日志显示:
PHP警告: 的file_get_contents(/tmp/build_7d6abc3e08fd2bf7205da28ab2e4181d/Path/to/home/home.html.twig): 无法打开流:没有这样的文件或目录 第131行/app/vendor/twig/twig/lib/Twig/Loader/Filesystem.php
我们已经尝试清除prod中的缓存。
有关信息,请参阅"脚本"我们的composer.json的一部分:
"scripts": {
"post-root-package-install": [
"SymfonyStandard\\Composer::hookRootPackageInstall"
],
"post-install-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"post-update-cmd": [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
],
"compile": [
"php app/check.php",
"echo \"DELETING app_dev.php\"",
"rm web/app_dev.php",
"echo \"DELETING app/cache/*\"",
"rm -rf app/cache/*",
"composer install --no-dev --optimize-autoloader",
"echo \"CACHE CLEAR\"",
"app/console cache:clear --env=prod --no-debug",
"echo \"CACHE WARMUP\"",
"app/console cache:warmup --env=prod --no-debug",
"app/console assetic:dump --env=prod --no-debug"
]}
我们正在使用symfony 2.7
感谢任何帮助。 感谢
答案 0 :(得分:0)
对于未来参考,最终通过将每个捆绑包更新为 composer.son 中的最新版本来解决问题。
答案 1 :(得分:0)
对于那些仍然坚持解决它的人 -
我通过提供安装symfony资产的路径来解决这个问题
php app / console assets:安装 web --env = dev
在heroku中,资产默认安装在tmp文件夹中。 所以我必须专门告诉脚本将它们安装到web文件夹中。
以下是我的作曲家剧本
"scripts" : {
"symfony-scripts" : [
"Incenteev\\ParameterHandler\\ScriptHandler::buildParameters",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile",
"Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::prepareDeploymentTarget"
],
"post-install-cmd" : "@symfony-scripts",
"post-update-cmd" : "@symfony-scripts",
"compile" : [
"php app/console assets:install web --env=dev",
"php app/console assetic:dump web --env=dev",
"rm -rf app/cache/*"
]
},
希望这会有所帮助