Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony2路由_Symfony - Fatal编程技术网

Symfony2路由

Symfony2路由,symfony,Symfony,我有一个symfony2项目,我想创建一个路由(前缀),它将指向我的旧项目,它位于一个文件夹中(它不是MVC项目)。我已决定在供应商内部创建一个文件夹,名称为我的旧项目(symfony/vendor/myolproject) 因此,规则是: http://symfony/oldproject/->指向文件夹或特定文件 比如(index.php)“symfony/vendor/myolproject” 通过oldproject之后的所有流量/(所有获取参数) 所有不带前缀的oldproject都

我有一个symfony2项目,我想创建一个路由(前缀),它将指向我的旧项目,它位于一个文件夹中(它不是MVC项目)。我已决定在供应商内部创建一个文件夹,名称为我的旧项目(symfony/vendor/myolproject)

因此,规则是:

  • http://symfony/oldproject/
    ->指向文件夹或特定文件 比如(index.php)“symfony/vendor/myolproject”
  • 通过oldproject之后的所有流量/(所有获取参数)
  • 所有不带前缀的oldproject都将使用标准symfony2路由
Basicali代替(routing.yml):

OldProject_主页:

pattern:  /oldproject/
defaults: { _controller: AcmeDemoBundle:Default:index }
pattern:  /project/
defaults: { /vendor/myOldProject }
使用:

OldProject_主页:

pattern:  /oldproject/
defaults: { _controller: AcmeDemoBundle:Default:index }
pattern:  /project/
defaults: { /vendor/myOldProject }

怎么做?

我认为使用mod_重写规则更容易。 见鬼,如果您对代码文件夹的访问规则非常谨慎,那么只需将旧项目存储在web下的单独文件夹(即/web/project/)中就可以了

但如果您绝对坚持使用symfony2解决方案,那么您可能需要在旧项目和新的symfony2项目之间编写一个桥接包


绝对没有办法像你在例子中描述的那样去做。

我认为使用mod_重写规则更容易。 见鬼,如果您对代码文件夹的访问规则非常谨慎,那么只需将旧项目存储在web下的单独文件夹(即/web/project/)中就可以了

但如果您绝对坚持使用symfony2解决方案,那么您可能需要在旧项目和新的symfony2项目之间编写一个桥接包


绝对没有办法像您在示例中所描述的那样做到这一点。

我认为此解决方案将帮助那些希望使用symfony2作为主项目并将旧的现有项目文件保存在一个单独的文件夹中的人,并允许使用所有get参数进行通信

我已在/web/中添加了对symfony2的.htaccess,其中包含:

重新启动发动机

重写cond%{REQUEST_FILENAME}-f

重写规则:(?!oldproject)。*$app_dev.php[QSA,L]

我把我的旧项目放在/web/oldproject中/

这意味着我可以对每个流量使用symfony2:

对于我的旧项目,我可以使用:

我希望这将帮助那些希望从旧项目迁移到基于symfony2的新项目的人


感谢您的帮助

我认为此解决方案将帮助希望使用symfony2作为主项目的人,并将旧的现有项目文件保存在一个单独的文件夹中,并允许使用所有get参数进行通信

我已在/web/中添加了对symfony2的.htaccess,其中包含:

重新启动发动机

重写cond%{REQUEST_FILENAME}-f

重写规则:(?!oldproject)。*$app_dev.php[QSA,L]

我把我的旧项目放在/web/oldproject中/

这意味着我可以对每个流量使用symfony2:

对于我的旧项目,我可以使用:

我希望这将帮助那些希望从旧项目迁移到基于symfony2的新项目的人


谢谢你的帮助

谢谢你Inori,你说得对,我需要使用mod_rewrite。我会在下面的回答中给出更多细节谢谢你,我需要使用mod_重写。我将在下面的回答中提供更多细节