Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.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
Php Symfony2路由不匹配_Php_Symfony_Routing - Fatal编程技术网

Php Symfony2路由不匹配

Php Symfony2路由不匹配,php,symfony,routing,Php,Symfony,Routing,我们有一个symfony2应用程序。在我们尝试创建子域(用于不同的应用程序)之前,一切都是成功的。对于子域的第一次测试,我们将子域链接到s2应用程序中的路由 在我们的测试之后,应用程序总是返回一个404代码,用于上一次测试中使用的路由。我们返回服务器中的所有配置,问题仍然存在 路线为“/usuario/iniciar sesion” 我们最初的路由配置是: #/src/AppBundle/Resources/routing.yml app_user: resource: routing/

我们有一个symfony2应用程序。在我们尝试创建子域(用于不同的应用程序)之前,一切都是成功的。对于子域的第一次测试,我们将子域链接到s2应用程序中的路由

在我们的测试之后,应用程序总是返回一个404代码,用于上一次测试中使用的路由。我们返回服务器中的所有配置,问题仍然存在

路线为“/usuario/iniciar sesion”

我们最初的路由配置是:

#/src/AppBundle/Resources/routing.yml
app_user:
    resource: routing/user.yml
    prefix: /usuario

#/src/AppBundle/Resources/routing.yml
app_login:
    path: /iniciar-sesion
    defaults: { _controller: AppBundle:User:login }
我们在控制台中执行以下命令来检查路由:

php console router:debug
php console router:match /usuario/iniciar-sesion
一切看起来都很好

其他一切正常。此时修补程序正在更改前缀(我们称之为“usuarios”),应用程序运行成功。之后,我们尝试返回原始前缀,但应用程序继续返回404代码

我们执行了大量的cache:clear--env=prod并手动删除cache dir。在我们当地的环境中,一切都很好


我们还可以检查什么?

因此,正如您在评论中所说,我认为您正在努力实现这一目标:

#/src/AppBundle/Resources/routing.yml
app_login:
    host: usuario.site.com
    path: /iniciar-sesion
    defaults: { _controller: AppBundle:User:login }

在服务器主机配置中,您需要将子域添加为服务器别名,并拥有该子域。我认为:

我们解决了这个问题


在设置域时,我们没有考虑服务器创建的文件夹。我们删除了它们,应用程序按原始路径响应。

我不确定您想要实现什么。。。是否要用子域替换此路由?(/usuario/iniciar sesion->usarios.site.com?)是的,这是我们检查服务器配置以集成新应用程序的尝试。我假设
app\u login
route在routing/user.yml中,与您在声明上方的注释中所写的文件不同。否?是的,app_登录在routing/user.yml中。我们没有以正确的方式表达我们的问题。我们在应用程序中测试了子域的配置,这次测试中断了我们在应用程序中的路径。只有当我们更改路径的前缀时,控制器才能正确响应。