Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.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 Symfony 4 FOSUserBundle错误太多重定向_Php_Symfony_Redirect_Login_Fosuserbundle - Fatal编程技术网

Php Symfony 4 FOSUserBundle错误太多重定向

Php Symfony 4 FOSUserBundle错误太多重定向,php,symfony,redirect,login,fosuserbundle,Php,Symfony,Redirect,Login,Fosuserbundle,我正在使用Symfony 4和PHP7.2中的FriendsOfSymfony用户包。我已经完成了我的项目,并想部署它。所以我 1.在服务器中更改php版本 2.将.env文件dev更改为日志 3.只需将我所有的文件上传到服务器(没有开发缓存,太大了) 打开窗口后,我可以在Google Chrome的DevelopmentManager中看到许多重定向。始终登录。好的,我试着改变security.yml和我在互联网上发现的其他奇怪的东西。什么都不管用。我尝试删除一些路由中的检查访问权限,只是测试

我正在使用Symfony 4和PHP7.2中的FriendsOfSymfony用户包。我已经完成了我的项目,并想部署它。所以我 1.在服务器中更改php版本 2.将.env文件dev更改为日志 3.只需将我所有的文件上传到服务器(没有开发缓存,太大了)

打开窗口后,我可以在Google Chrome的DevelopmentManager中看到许多重定向。始终登录。好的,我试着改变security.yml和我在互联网上发现的其他奇怪的东西。什么都不管用。我尝试删除一些路由中的检查访问权限,只是测试它是否有效,但也没有

我的完全安全 安全: 编码器: FOS\UserBundle\Model\UserInterface:bcrypt 供应商: fos_用户包: id:fos\u用户。用户\提供商。用户名\电子邮件

firewalls:
    dev:
        pattern: ^/(_(profiler|wdt)|css|images|js)/
        security: false
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_token_generator: security.csrf.token_manager
        logout: true
        anonymous: true

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN

access_control:
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: ROLE_ADMIN }
    - { path: ^/resetting, role: ROLE_ADMIN }
    - { path: ^/admin/, role: ROLE_ADMIN }
    - { path: ^/profile, role: ROLE_USER }
    - { path: ^/profile/edit, role: ROLE_USER }

access_denied_url: /

有人也有这个问题吗?

我认为你的问题与你的图书馆有关。
尝试
composer安装
composer安装--优化autoloader
,并确保引导文件存在于
var
中,并且
var/
可由web服务器用户写入。最后清除缓存
bin/console缓存:clear--env=prod
我认为导致此问题的原因是以斜杠结尾的路由:
/
,也称为“尾部斜杠”。此问题有三种解决方案:

  • 确保没有任何路线以尾部斜线结束。这意味着您还必须覆盖FOSUser包的一些默认路由,因为有些路由以
    /
    结尾
  • 使用尾部斜杠重定向所有路由。symfony网站上有
  • 升级到symfony 4.1,其中带有尾随斜杠的路由将自动重定向
    好的,但让我明白。我不知道如何正确部署我的应用程序。我只是改变了环境,通过FTPClient将文件上传到serwer。例如,我的引导是由CDN添加的。我在var中没有。它错了吗?在var中,我只有log和cache,因为它是symfony4。在我的本地主机中,一切都正常工作,但这个问题只存在于另一台服务器中。好的,我刚刚在本地完成了“composer安装”、“composer安装——优化自动加载程序”和“bin/console缓存:clear--env=dev”以及“bin/console缓存:clear--env=prod”。然后我又上传了所有的文件。问题仍然存在:(我在网络托管方面有过非常糟糕的经历,因为你没有shell访问权限,所以只能上传文件。要非常小心权限和隐藏文件!我有:Symfony 4.1.1(kernel:src,env:prod,debug:false),我的所有路由(除了“/”主页)都不会以斜杠“/”结束。”。我打赌这是一个小错误,但在所有其他错误之后,FOS不适合我…可能是因为错误的服务器配置?我只是将基本路径更改为/public。我显示重定向是/login to/to/login to/I更改主页路径,现在我知道它的登录将我重定向到“/”下一步,它重定向到登录回,因为我不是登录用户。但为什么登录重定向到“/”?即使我更改了权限并在未经验证的情况下公开了一条路由,它仍然会重定向到登录页面。查看删除/取消注释行
    访问被拒绝\u url://