【问题标题】:Silex Authentication Firewall IssueSilex 身份验证防火墙问题
【发布时间】:2013-11-19 02:31:10
【问题描述】:

我查看了 silex 文档 http://silex.sensiolabs.org/doc/providers/security.html,我正在使用 HTTP 身份验证来允许单个用户进入系统的后端。

虽然这在本地副本上有效,但在服务器上无效,拒绝登录。我以前在使用 htpasswd 文件时遇到过这个问题,并且能够通过在 cgi 模式下运行 php 来解决这个问题,但这在这种情况下没有帮助。

$app->register(new Silex\Provider\SecurityServiceProvider(), array(
    'security.firewalls' => array(
    'admin' => array(
        'pattern' => '^/admin',
        'http' => true,
        'users' => array(
             // raw password is foo
             'admin' => array('ROLE_ADMIN', '5FZ2Z8QIkA7UTZ4BYkoC+GsReLf569mSKDsfods6LYQ8t+a8EW9oaircfMpmaLbPBh4FOBiiFyLfuZmTSUwzZg==')    ,
        ),
    ),
    )
));

【问题讨论】:

    标签: php symfony silex


    【解决方案1】:

    在 Apache 的 php-cgi 中包含授权数据的标头存在一些问题。这可能是你的问题。尝试使用以下内容添加 .htaccess 文件:

    RewriteEngine On
    RewriteCond %{HTTP:Authorization} ^(.+)$
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    

    来源:Symfony/Component/HttpFoundation/ServerBag.php

    【讨论】:

      猜你喜欢
      • 2015-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-30
      • 2017-08-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多