我无法让我的索引页面显示在我的 cloudways symfony 应用程序上

I cant get my index page to show on my cloudways symfony app

我为我的 Web 应用程序使用 CloudWays 托管。我正在尝试让我的索引页正常工作。示例:www.mysite.com 或 www.mysite.com 指向我的索引或主页。我在 运行 composer require annotations

之后设置了以下控制器
<?php

namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;

class HomeController extends AbstractController
{

     /**
      * @Route("/", name="main")
      */

    public function index()
    {

        return $this->render('main/index.html.twig', ['controller_name' => 'HomeController',]);

    }
}

我遵循了 Symfony 4 官方路由文档,其中定义了这个示例代码(https://symfony.com/doc/4.1/routing.html):

// src/Controller/BlogController.php
namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;

class BlogController extends AbstractController
{
    /**
     * Matches /blog exactly
     *
     * @Route("/blog", name="blog_list")
     */
    public function list()
    {
        // ...
    }
}

我的项目结构如下:

/projectfolder
---- /public_html
     ---- /bin
          /config
          ----/dev
              framework.yaml
          annotations.yaml
          /public
          ----/assets
              /css
              /js
              .htaccess
              index.php
          /src
          ----/Controller
              ----HomeController.php
              Kernal.php
          /templates
          ----/main
              ----index.html.twig
              base.html.twig
          /var
          /vendor
          .env
          .swp
           composer.json
           composer.lock
           symfony.lock

当我输入 url www.mysite.com 时,出现 403 Forbidden 错误。

Forbidden
You don't have permission to access this resource.

Apache/2.4.25 (Debian) Server at www.mysite.om Port 80

当我输入 url www.mysite.com/public 时,它可以正常工作并完美显示我的网站。

我该如何解决这个问题,使我的索引位于 www.mysite.com 而不是 www.mysite。com/public

Google 域图像:

由于 CloudWays 似乎是一个使用 Apache server 的共享托管站点,您可能需要一个 Apache pack。 运行 在您的控制台中命令 composer require symfony/apache-pack 并再次上传您的项目文件以查看是否有帮助。

我明白问题出在哪里了。为了解决我的问题,我需要执行以下操作:

步骤 1) 导航到 Cloudways 服务器应用程序设置面板。

步骤 2) 将 webroot 更改为 public 文件在项目中的任何位置。

如果您不知道 public 文件的位置,您可以通过提供的终端连接到 apache 服务器并使用 cd 命令导航到该目录来查找。或者使用 ftps 连接来导航到所需的目录。

完成此操作后 www.mysite.com 应该会带您到 index/home page。在研究了为什么会发生这种情况后,我发现 index.php 比我最初的根文件夹低一层。为了解决这个问题,我需要将我的根文件夹带到 index.php 所在的正确层。