Php URL重写中的符号自动性

Php URL重写中的符号自动性,php,symfony,url,url-rewriting,root,Php,Symfony,Url,Url Rewriting,Root,我的网站名为“vg” 开发人员url为:“ vg\app\config\routig.yml中设置的前缀定义为:“/gallery” 因此,问题是:如果url仅为“”,如何将前缀(gallery)自动添加到用户或进程给定的url中 (…/gallery/相当于传统的索引页。) 谢谢在路由.yml中,您可以添加一个简单的重定向: # redirecting the root root: path: / defaults: _controller: Framework

我的网站名为“vg” 开发人员url为:“ vg\app\config\routig.yml中设置的前缀定义为:“/gallery”

因此,问题是:如果url仅为“”,如何将前缀(gallery)自动添加到用户或进程给定的url中

(…/gallery/相当于传统的索引页。)


谢谢

路由.yml
中,您可以添加一个简单的重定向:

# redirecting the root
root:
    path: /
    defaults:
        _controller: FrameworkBundle:Redirect:urlRedirect
        path: /gallery
        permanent: true
参考:

如果前缀(此处
gallery
)是已配置的值,请使用控制器方法执行重定向:

/**
 * @Route("/", name="index")
 */
public function indexAction(): Response
{
    $urlPrefix = 'gallery'; // get this value from wherever appropriate, e.g.
                            // a service, class constant, a value from parameters.yml

    return $this->redirectToRoute('some_route', [
        'prefix' => $urlPrefix
    ]);
}
假设您想要代码中的前缀值,那么它不应该是已配置的路由前缀,而应该是正确的路由器参数:

/**
 * @Route("/{prefix}", name="some_route")
 *
 * @return Http\Response
 */
public function someAction($prefix): Response
{
    // do things with $prefix

    return $this->render('view.html.twig');
}

这两个操作可以在同一个控制器中。

routing.yml
中,您可以添加一个简单的重定向:

# redirecting the root
root:
    path: /
    defaults:
        _controller: FrameworkBundle:Redirect:urlRedirect
        path: /gallery
        permanent: true
参考:

如果前缀(此处
gallery
)是已配置的值,请使用控制器方法执行重定向:

/**
 * @Route("/", name="index")
 */
public function indexAction(): Response
{
    $urlPrefix = 'gallery'; // get this value from wherever appropriate, e.g.
                            // a service, class constant, a value from parameters.yml

    return $this->redirectToRoute('some_route', [
        'prefix' => $urlPrefix
    ]);
}
假设您想要代码中的前缀值,那么它不应该是已配置的路由前缀,而应该是正确的路由器参数:

/**
 * @Route("/{prefix}", name="some_route")
 *
 * @return Http\Response
 */
public function someAction($prefix): Response
{
    // do things with $prefix

    return $this->render('view.html.twig');
}

这两个操作可以在同一个控制器中。

我找到了Ok。我真诚地想和你谈谈

  • vg\app\config\routing.yml
    文件中
  • 现在如果我打电话(不管最后有没有
    /
    ),这个URL的末尾会出现“gallery”这个词
    @+好的,我找到了。我真诚地想和你谈谈

  • vg\app\config\routing.yml
    文件中
  • 现在如果我打电话(不管最后有没有
    /
    ),这个URL的末尾会出现“gallery”这个词
    @+

    vg\app\config\routig.yml文件中的前缀标记上只设置了单词“gallery”。我不想设置“/gallery”,但我想使用这个“prefix”参数的内容,因此,在您之前的回答中,在标记“path”的正确位置可以使用“prefixe”的代表性“元数据”?like:path:{prefixe}//是一个example@PhilippeGODEFROY啊,好的,所以真正的前缀是未知的,但可以作为某种配置参数使用?我做到了。所以我有:#src/VG/paintBundle/Resources/config/routing.yml VG_paint_index:path:/defaults:_controller:VGpaintBundle:Paints:index-path:/gallery permanent:true当我询问URL:I-acquire:'找不到“GET/”的路由对于函数来说是正确的,但很抱歉,我应该在哪个脚本中编写它?在我的包控制器里?以及如何检索vg\app\config\routig.yml文件中前缀标记上设置的值(/gallery)。是的,它需要在控制器中。就我个人而言,我会把它放在捆绑包中最通用的控制器中。只是在vg\app\config\routig.yml文件的前缀标记上设置了单词“gallery”。我不想设置“/gallery”,但我想使用这个“prefix”参数的内容,因此,在您之前的回答中,在标记“path”的正确位置可以使用“prefixe”的代表性“元数据”?like:path:{prefixe}//是一个example@PhilippeGODEFROY啊,好的,所以真正的前缀是未知的,但可以作为某种配置参数使用?我做到了。所以我有:#src/VG/paintBundle/Resources/config/routing.yml VG_paint_index:path:/defaults:_controller:VGpaintBundle:Paints:index-path:/gallery permanent:true当我询问URL:I-acquire:'找不到“GET/”的路由对于函数来说是正确的,但很抱歉,我应该在哪个脚本中编写它?在我的包控制器里?以及如何检索vg\app\config\routig.yml文件中前缀标记上设置的值(/gallery)。是的,它需要在控制器中。就我个人而言,我会把它放在捆绑包中最通用的控制器中。