在Symfony4中为子文件夹中的应用程序最简单的路由和htaccess设置

时间:2019-03-30 14:57:19

标签: apache .htaccess symfony routing symfony4

编辑:我设法找到了答案。保持这种状态供其他人查找。


我目前正在尝试将现有(正在运行)的应用程序转换为Symfony4应用程序,而我一开始就陷入困境:路由。

我的设置是这样的:

  • 在我的主要域example.com上,我有一个wordpress页面,其htaccess文件包含默认的RewriteCond %{REQUEST_FILENAME} !-d,因此对子文件夹my_app的请求不会由WP路由器处理。
  • 在子文件夹my_symfony_app中,我有一个Symfony4应用,其中包含自己的htaccess文件和RewriteRule ^(.*)$ /my_symfony_app/public/$1 [L,QSA]
  • 文件config\services.yaml包含
    parameters:
        router.request_context.base_url: '/my_symfony_app'
  • 文件src\Controller\TestController.php中有
    /**
    * @Route("/")
    */
    public function testHomepage(){/* some testpage rendered here */}

当我尝试使用此设置访问example.com/my_symfony_app时,出现404错误No route found for "GET /my_symfony_app/"

但是当我将@Route("/")替换为@Route("/my_symfony_app")时,我的测试页会正确显示。

我想避免在我的所有全部路径前加my_symfony_app,但是给定herehere的解决方案似乎过于繁琐,并且必然导致其他问题沿路。

这肯定是Symfony中已经实现的功能吗?我在htaccess文件中缺少某些参数或一行吗?

0 个答案:

没有答案