Получите белый экран при добавлении охранников в bjyauthorize

Я новичок в ZF2 и bjyauthorize — так что я надеюсь, что это глупая ошибка с моей стороны: D

Я успешно настроил скелетное приложение ZF2 и zfcUser и пытаюсь добавить bjyAuthorize к миксу. Я также использую тип соединения Zend / Db с mySQL — НЕ DOCTRINE (: D). Я использую следующие версии: PHP (5.5), ZF2 (2.3. *), ZfcUser (1.2.1), bjyAuthorize (1.4.0).

Я следовал инструкциям к письму в GitHub Readme. Мне не потребовалось много времени, чтобы понять, что пример «bjyauthorize.global.phpmsgstr «файл содержит слишком много настроек (как примеры), а также содержит неверную ссылку на поле в»\ BjyAuthorize \ Provider \ Роль \ ZendDb :: класс«(» role_id «s / b» roleid «).

По сути, как только я раскомментирую защиту на основе маршрутов или контроллеров в моем файле конфигурации (я не собираюсь делать оба — просто хочу, чтобы один работал), я получаю белый экран — никаких сообщений об ошибках, которые могут быть полезны — при попытке получить доступ к моей домашней странице приложений скелета. Я волнуюсь, поэтому это синтаксическая ошибка PHP с моей стороны.

Я также включил ZendDeveloperTools, и даже при появлении этой ошибки не появляется даже панель инструментов в нижнем колонтитуле.

Вот мой конфигурационный файл:

<?php

return [
'bjyauthorize' => [

// set the 'guest' role as default (must be defined in a role provider)
'default_role' => 'guest',

/* this module uses a meta-role that inherits from any roles that should
* be applied to the active user. the identity provider tells us which
* roles the "identity role" should inherit from.
*
* for ZfcUser, this will be your default identity provider
*/
'identity_provider' => \BjyAuthorize\Provider\Identity\ZfcUserZendDb::class,

/* role providers simply provide a list of roles that should be inserted
* into the Zend\Acl instance. the module comes with two providers, one
* to specify roles in a config file and one to load roles using a
* Zend\Db adapter.
*/
'role_providers' => [
// this will load roles from the user_role table in a database
// format: user_role(role_id(varchar], parent(varchar))
\BjyAuthorize\Provider\Role\ZendDb::class => [
'table'                 => 'user_role',
'identifier_field_name' => 'id',
'role_id_field'         => 'roleid',
'parent_role_field'     => 'parent_id',
],
],

/* Currently, only controller and route guards exist
*
* Consider enabling either the controller or the route guard depending on your needs.
*/
'guards' => [
/* If this guard is specified here (i.e. it is enabled], it will block
* access to all controllers and actions unless they are specified here.
* You may omit the 'action' index to allow access to the entire controller
*/
//             \BjyAuthorize\Guard\Controller::class => [
//                 ['controller' => 'zfcuser', 'roles' => ['guest']],
//                 ['controller' => ['Application\Controller\Index'], 'roles' => ['guest']],
//             ],

//             /* If this guard is specified here (i.e. it is enabled], it will block
//              * access to all routes unless they are specified here.
//              */
//             \BjyAuthorize\Guard\Route::class => [
//                 ['route' => 'zfcuser', 'roles' => ['user']],
//                 ['route' => 'zfcuser/logout', 'roles' => ['user']],
//                 ['route' => 'zfcuser/login', 'roles' => ['guest']],
//                 ['route' => 'zfcuser/register', 'roles' => ['guest']],
//                 // Below is the default index action used by the ZendSkeletonApplication
//                 ['route' => 'home', 'roles' => ['guest', 'user']],
//             ],
],
],
];

Когда я работаю, как указано выше, без охраны, я могу войти через сайт / пользователя / логин, и панель инструментов Zend Dev показывает мне правильную роль для этого пользователя. Так что это как минимум положительно.

Рад предоставить любую дополнительную информацию или настройки — просто пытаюсь узнать.

2

Решение

Хорошо, теперь я чувствую себя довольно глупо.

Схема БД, с которой bjyauthorize корабли имеет поле «Идентификатор роли«- в моем коде выше я не учел чувствительность к регистру и имел»Идентификатор роли«. Изменено это, и все работает отлично.

0

Другие решения

Других решений пока нет …