Silverstripe 4.9.0 无法访问 CMS 管理/Silverstripe Framework 需要 DB::getConfig() 中的 "database" 键

Silverstripe 4.9.0 can't access CMS administration / Silverstripe Framework requires a "database" key in DB::getConfig()

我是 Linux 及其相关方面的新手,但目前我正在尝试获取 Silverstripe 4.9.0。 运行 在 Debian 10 服务器上。我 运行 遇到了 2 个问题,每个问题都出现在我做的两个项目之一中。

  1. Project 1 - 在我用composer create-project silverstripe/installer my-project3命令创建安装文件夹后,我将我的文档根目录设置为var/www/html/my-project3/public文件夹,如它写在文档中。 在浏览器中访问页面后,我收到此消息: Silverstripe Framework 需要 DB::getConfig() 中的“数据库”键。您是否忘记在您的环境中设置 SS_DATABASE_NAME 或 SS_DATABASE_CHOOSE_NAME?

  2. 项目 2 - 同样的问题,但我发现第一个错误可以通过编辑 .env 文件来手动设置环境等来修复。我还在 MariaDB 中准备了一个数据库,并在 example.env 文件中填充了与数据库有关的所有内容(之后重命名为 .env 以便可以通过 vendor/bin/sake dev/build 命令读取)。但是,据我所知,这会绕过浏览器本身的基本安装,因为 Silverstripe 从 .env 文件中获取所需的一切。我现在可以看到基本的自动生成的主页(没有任何关于安装成功的文章,只有您的站点名称和关于我们的菜单,请联系...),但是在尝试通过简单地添加 /admin 访问 CMS 管理之后/ 到我的 URL,我得到了这个错误:

     Not Found
    
     The requested URL was not found on this server.
    
     Apache/2.4.38 (Debian) Server at bis054.vse.cz Port 443
    

所以现在它是半功能的,我需要的是:

为了让第一个项目正常运行 - 能够看到安装网页,然后希望我能够通过网络界面本身设置所有内容,或者让第二个项目正常运行 - 找出原因无法访问 CMS 管理,因此关于我们和联系我们页面(让我得到完全相同的错误)。发现 /my-project/public 子文件夹中没有 admin 文件夹或 about-us 文件夹。

编辑 - 让第二个项目开始工作,为可能 运行 遇到这个问题的每个人发帖,你必须将它添加到你的 /etc/apache2/sites-enabled/000-default.conf 和 000-default-le -ssl.conf 如果您使用的是 https。为这两个文件都设置它,所以它适用于端口 443 和端口 80,只是为了确定!它必须在 VirtualHost 结束之前在配置文件的末尾设置。

<Directory /var/www/html/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride All
    Order allow,deny
    allow from all
</Directory>