Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Symfony2生产中找不到/web/bundles下的资产_Php_Bash_Symfony_Heroku_Procfile - Fatal编程技术网

Php 在Symfony2生产中找不到/web/bundles下的资产

Php 在Symfony2生产中找不到/web/bundles下的资产,php,bash,symfony,heroku,procfile,Php,Bash,Symfony,Heroku,Procfile,我已经使用CHH Heroku buildpack php将Symfony2应用程序部署到Heroku 将代码推送到heroku后,我使用“heroku run bash”来: 1) php应用程序/控制台缓存:清除--env=prod 2) php应用程序/控制台资产:安装--symlink 3) php应用程序/控制台断言:dump--env=prod 无论如何,在/web/bundles/…上转储了资产。。。未提供,并且显示404未找到(我的意思是,每个资产单独未找到)。但是,例如,/we

我已经使用CHH Heroku buildpack php将Symfony2应用程序部署到Heroku

将代码推送到heroku后,我使用“heroku run bash”来:
1) php应用程序/控制台缓存:清除--env=prod
2) php应用程序/控制台资产:安装--symlink
3) php应用程序/控制台断言:dump--env=prod

无论如何,在/web/bundles/…上转储了资产。。。未提供,并且显示404未找到(我的意思是,每个资产单独未找到)。但是,例如,/web/favicon.ico被正确地提供给客户端

在我的本地主机中,在开发模式下不会发生这种情况

服务器上可能存在任何权限问题吗?我应该在Procfile中运行这些命令吗?如何运行


提前感谢。

终于想出了答案: 部署过程完成后,Heroku不允许修改文件系统,因此我使用概要文件告诉Heroku运行install.sh,在其中我运行这些命令

Procfile如下所示:

    web: sh ./install.sh
和install.sh:

    php app/console cache:clear --env=prod
    php app/console assets:install --env=prod
    php app/console assetic:dump --env=prod
    php app/console doctrine:schema:update --force
    php app/console doctrine:fixtures:load --append
    sh ./bin/run
最后一行非常重要,因为它告诉Heroku继续部署过程