小编Coo*_*oty的帖子

为什么我部署的 Symfony 应用程序无法加载 bundles.php 文件?

我有一个 Symfony Web 应用程序。我想将其部署到虚拟专用服务器。

我在Laravel Homestead Vagrant box中开发了该应用程序,并通过 Github 操作进行部署。

在我的本地计算机上,该应用程序在 Vagrant 环境中运行良好,但在将文件同步到实时服务器后,它给我一个错误屏幕。

警告:require(/var/www/thebedechkacase.com/src/config/bundles.php):无法打开流:没有这样的文件或目录

错误来自 Kernel.php 的第 20 行,如下所示

const CONFIG_EXTS = '.{php,xml,yaml,yml}';
public function registerBundles()
{
    $contents = require $this->getProjectDir().'/config/bundles.php';
    foreach ($contents as $class => $envs) {
        if ($envs[$this->environment] ?? $envs['all'] ?? false) {
            yield new $class();
        }
}
Run Code Online (Sandbox Code Playgroud)

我不明白的是,根据错误消息和上面的代码, 的输出解析$this->getProjectDir()/var/www/thebedechkacase.com/src/thebedechkacase.com是存储我的应用程序代码的文件夹),但bundles.php实际上位于/var/www/thebedechkacase.com/config/.

为什么 Symfony 认为 theprojectDir存在并且为什么不在根目录(又名 )中src查找?为什么这在我的开发环境中有效,但在实时服务器上却不起作用?configthebedechkacase.com/

附加信息:我正在尝试使用在 Github 操作中调用的 shell …

php deployment symfony devops

4
推荐指数
1
解决办法
2409
查看次数

标签 统计

deployment ×1

devops ×1

php ×1

symfony ×1