【发布时间】:2017-03-16 00:47:39
【问题描述】:
这是一个使用 symfony 2.4.2 制作的网站,它有一个页面(下载)被限制,你需要一个用户名和密码才能访问它。
问题是,在过去,他们想要不同语言的不同网址,不仅要更改语言环境,还要更改“slug”。
因此,如果您像普通人一样通过单击按钮访问该页面,它会要求您输入用户名和密码,但是,如果您以一种受支持的语言输入 URL,并且使用不同的受支持语言的区域设置,它让您通过,无需询问您的访问权限。
这是我的 routing.yml:
frontend_descarregues_ca:
path: /descarregues.html
defaults: {_controller: FrontendBundle:Default:descarregues, _locale: ca }
frontend_descarregues_es:
path: /descargas.html
defaults: { _controller: FrontendBundle:Default:descarregues, _locale: es }
frontend_descarregues_fr:
path: /telechargements.html
defaults: { _controller: FrontendBundle:Default:descarregues, _locale: fr }
这是我的 security.yml:
security:
firewalls:
dev:
pattern: ^/(_(profiler|wdt)|css|images|js)/
security: false
default:
pattern: ^/ca/descarregues.html
provider: in_memory
http_basic: ~
anonymous: ~
default_fr:
pattern: ^/fr/telechargements.html
provider: in_memory
http_basic: ~
anonymous: ~
default_es:
pattern: ^/es/descargas.html
provider: in_memory
http_basic: ~
anonymous: ~
access_control:
- { path: ^/ca/descarregues.html, roles: ROLE_DOWN }
- { path: ^/es/descargas.html, roles: ROLE_DOWN }
- { path: ^/fr/telechargements.html, roles: ROLE_DOWN }
providers:
in_memory:
memory:
users:
someuser:
password: somepassword
roles: 'ROLE_DOWN'
我再说一遍,这是 symfony 2.4.2
我尝试使用要求只允许具有指定“slug”的区域设置有效并进入页面,但这样做碰巧它不会询问我访问权限。
有人知道我该如何解决这个问题吗? (提醒一下,这是 symfony 2.4.2)
【问题讨论】: