security.yml年里,我的定义如下:

 access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/api/getDays, roles: IS_AUTHENTICATED_ANONYMOUSLY }        
        # - { path: ^/admin, roles: ROLE_ADMIN }
        - { path: ^/, roles: ROLE_USER }
        - { path: ^/api, roles: PUBLIC_ACCESS }

http://localhost:8000/api/search.json总是重定向到登录页面

推荐答案

一旦有与模式匹配的路由,系统就会暂停该过程,不再继续.所以,你的access_control适用于第三行.交换线路3和4,它应该可以工作:

 access_control:
        - { path: ^/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
        - { path: ^/api/getDays, roles: IS_AUTHENTICATED_ANONYMOUSLY }        
        # - { path: ^/admin, roles: ROLE_ADMIN }
        - { path: ^/api, roles: PUBLIC_ACCESS }
        - { path: ^/, roles: ROLE_USER }

Source: 100

对于每个传入的请求,symfony判断每个ACCESS_CONTROL条目以找到与当前请求匹配的条目.一旦找到匹配的ACCESS_CONTROL条目,它就会停止--只使用第一个匹配的ACCESS_CONTROL来强制访问.

Php相关问答推荐

Laravel有一个具有两个匹配字段

Laravel 9如何过滤$的项目与结果?

在WooCommerce Checkout帐单地址字段后插入自定义按钮

如何将对我的域的请求重定向到子文件夹中的索引,同时保留域URL并使用.htaccess?

WooCommerce在购买后多次重定向

WHERE方法不能与有效查询Laravel一起使用

HTTPPost请求在从php脚本调用时返回404,但在从node.js脚本调用时有效.终结点有效

如何在PHP中根据会话将用户重定向到不同的页面?

如果所有请求都通过index.php路由,如何使用htaccess文件强制使用HTTPS?

当我激活插件时出现错误注意:未定义的偏移量:1

无法读取某些 WordPress 主机上的 cookie

根据页面的最后修订日期设置 MediaWiki 内部链接的样式

设置GA4 PHP API的setSubject以允许访问所有管理员账户属性

PHP文件如何从CSS执行

PHP使用三元运算符进行null合并(再次)

批量作业(job)提交错误无法处理所有文档,uris 似乎正确?

如何使用 WhatsApp Cloud API 向 WhatsApp 发送消息,而无需在发送消息之前注册收件人号码?

是否有适用于 Windows 的真正 64 位版本的 PHP 5.6?

Laravel 查询关系是否为 bool

如何将子查询结果添加到学说 2 中主查询的末尾?