0

我正在使用 Encore 构建系统在 Symfony 4.2 上导入项目。

我安装了所有模块,一切正常。

但是当我想添加一个新页面(requetes)时,我总是会收到 404 错误。

这是项目:https ://github.com/LaboratoirePLH/ERC-MAP

  • PHP 7.2.11
  • PostgreSQL 9.6 与 PostGIS 2.4
  • 带有 Encore 构建系统的 Symfony 4.2
  • 引导程序 4.2
  • jQuery 3
  • ChosenJS for jQuery(自动完成组合框)
  • jQuery 的 DataTables(改进的数据表)

我正在与 Laragon 一起运行 PosteGre。

我试图确保 apache2 上的 mod_rewrite。

我也尝试将 .httaccess 文件放在 public/ 上,但仍然无法正常工作。

我用“php bin/console debug:route”检查了路线,她被列出了

https://i.imgur.com/p4naU6Z.png(我无法发布我需要更多声誉的图片)

RequetesController.php :

/**
     * Page queries
     *
     * @Route("/requetes", name="requetes")
     */

     public function index(){

         return $this->render('requetes/index.html.twig');

     }

还有树枝,在 requetes 文件夹中:

<html>
    <body>
        <h1>Hello {{ $requetes }}</h1>
    </body>
</html>

使用链接“ https://127.0.0.1:8000/requetes ”我得到了一个 404 错误,并且使用“ https://127.0.0.1:8000/ ”它正在工作。

我是 Symfony 的初学者,我真的需要你的帮助。

4

3 回答 3

0

在您的项目目录中创建此文件,如果它不存在: project_dir/public/.htaccess并将以下内容添加到文件中

<IfModule mod_rewrite.c>
    Options -MultiViews
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>

<IfModule !mod_rewrite.c>
    <IfModule mod_alias.c>
        RedirectMatch 302 ^/$ /index.php/
    </IfModule>
</IfModule>

于 2019-04-12T17:26:08.143 回答
0

您的 public/.htaccess 文件的内容是什么?你可以试试这个来自 apache-pack 配方的:

https://github.com/symfony/recipes-contrib/blob/master/symfony/apache-pack/1.0/public/.htaccess


编辑 :

尝试像这样重新格式化您的注释和操作:

/**
 * Page queries
 *
 * @Route("/requetes", name="requetes")
 */
public function index()
{
    return $this->render('requetes/index.html.twig');
}
于 2019-04-12T14:35:00.970 回答
0

你可以尝试这样称呼你的树枝:

return $this->render('requetes');

如果存在,则必须显示该页面。如果它存在,你能告诉我们完整的错误信息吗?

于 2019-04-12T14:12:08.333 回答