Я пытался установить sfGuardPlugin часами, но он все еще не работает.Symfony sfGuardPlugin не работает
Сначала я попытался установить это следующим образом: PHP Symfony плагин: установить sfGuardPlugin
Но я получаю эту ошибку:
Fatal error: require_once(): Failed opening required 'PEAR.php' (include_path='/users/alex/fsp:/users/alex/fsp/lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/vendor:/users/alex/fsp/lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/task:') in /users/alex/fsp/lib/vendor/symfony/lib/plugin/sfPearEnvironment.class.php on line 15
Хотя я добавил
include_path = ".:/php/includes:/Users/alex/Documents/PEAR/PEAR"
к php.ini (соответственно php.ini.default). Это php.ini, который я получаю, когда использую функцию phpinfo().
Я пробовал много вещей, чтобы заставить его работать, но затем я попытался установить плагин вручную. Я загрузил пакет с сайта symfony и разобрал его. Я добавил
$this->enablePlugins(array('sfPropelPlugin', 'sfGuardPlugin'));
в файл ProjectConfiguration.class.php. Тогда я перестроил модель, используя
php symfony propel:build --all --and-load.
Тогда я изменил базовый класс MyUser в sfGuardSecurityUser. Я редактировал settings.yml и добавил (правильно отформатированный :)):
all: .settings: ... enabled_modules: [default, sfGuardAuth] .actions: login_module: sfGuardAuth login_action: signin
После сборки я получаю эту ошибку:
Warning: require(/users/alex/fsp/plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php) [function.require]: failed to open stream: Permission denied in /users/alex/fsp/lib/vendor/symfony/lib/autoload/sfAutoload.class.php on line 188
Fatal error: require() [function.require]: Failed opening required '/users/alex/fsp/plugins/sfGuardPlugin/lib/user/sfGuardSecurityUser.class.php' (include_path='/users/alex/fsp:/users/alex/fsp/lib/vendor/symfony/lib/plugins/sfPropelPlugin/lib/vendor:.:') in /users/alex/fsp/lib/vendor/symfony/lib/autoload/sfAutoload.class.php on line 188
После очистки кэша я получаю эту ошибку:
Fatal error: Class 'sfGuardSecurityUser' not found in /users/alex/fsp/apps/frontend/lib/myUser.class.php on line 4
Класс sfGuardSecurityUser существует в плагинах/sfGuardPlugin/lib/user. Таблицы создаются в базе данных. Конечно, я также включил запись is_secure в true в файле security.yml.
Я пробовал и искал и читал в течение двух дней, чтобы решить эту проблему, но я не могу заставить ее работать. Может ли кто-нибудь помочь?
Спасибо, Alex
Вы проверяли, имеют ли Apache (или сервер http, который вы используете) права на чтение в папку плагина и 'lib' внутри папки плагина? –
Спасибо за ваш ответ, теперь он работает! – alex
Я добавил это как ответ. –