1

我必须对 symfony2 应用程序中的单个页面使用 HTTPS。我试过像

安全.yml

- { path: ^/payment, roles: ROLE_USER, requires_channel: https } 

它工作得很好,但是当我从 /payment 页面导航到其他页面时,它在 HTTPS 而不是 HTTP 中保持不变。我还尝试了奏鸣曲管理控制器的一些东西,例如:

PaymentAdmin.php

$collection
        ->add('makePayment', 'payment/{paymentId}',$options = array('_scheme' => 'https'));

但同样的问题。只是我只想将 HTTPS 用于 /payment 页面而不是其他页面。我该如何解决这个问题。

4

1 回答 1

2

您可以尝试将正则表达式开始符号“^”添加到您的路径中,例如“^/payment”,它应该说明以 /payment 开头的路由应该在“https”中。

{ path: ^/payment, roles: ROLE_USER, requires_channel: https } 

http://symfony.com/doc/current/cookbook/security/force_https.html中的示例 也表明了这一点。

于 2014-07-10T08:08:36.127 回答