2016-03-25 1 views
1

У меня есть проблема для регистрации пользователей в производствеfosuserbundle не Логгина Int PRO режим

У меня есть мой secutiry.yml файл следующим образом:

security: 
encoders: 
FOS\UserBundle\Model\UserInterface: bcrypt 

role_hierarchy: 
    ROLE_ADMIN:  ROLE_USER 
    ROLE_SUPER_ADMIN: ROLE_ADMIN 

providers: 
    fos_userbundle: 
     id: fos_user.user_provider.username_email 

firewalls: 
main: 
     pattern: ^/ 
     form_login: 
      provider: fos_userbundle 
      csrf_token_generator: security.csrf.token_manager 
      # if you are using Symfony < 2.8, use the following config instead:                                        
      # csrf_provider: form.csrf_provider                                                

     logout:  true 
     anonymous: true 

access_control: 
- { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY } 
- { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/js, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
    - { path: ^/css, roles: IS_AUTHENTICATED_ANONYMOUSLY } 
- { path: ^/, role: ROLE_ADMIN } 

и часть моего config.yml:

# Doctrine Configuration                                                      
doctrine: 
dbal: 
    driver: pdo_mysql 
host:  mysql-paradasym85.alwaysdata.net 
port:  3306 
dbname: paradasym85_symfony 
user:  user 
password: pass123456 (fake) 
charset: UTF8 
# if using pdo_sqlite as your database driver:                                               
# 1. add the path in parameters.yml                                                 
#  e.g. database_path: "%kernel.root_dir%/data/data.db3"                                            
# 2. Uncomment database_path in parameters.yml.dist                                             
    # 3. Uncomment next line:                                                    
    #  path:  "%database_path%"                                                  

orm: 
    auto_generate_proxy_classes: "%kernel.debug%" 
    naming_strategy: doctrine.orm.naming_strategy.underscore 
    auto_mapping: true 

все работает должным образом в развитии, но не в режиме производства

кажется, как будто/login_check не работает.

приветствие.

+0

я проверить версию PHP и сервер и Дев они имеют ту же версию –

+0

пожалуйста исправить отступ кода. Что означает, что он не работает «в режиме производства» ... 'app/console server: run --env = dev' работает, но' app/console server: run --env = prod' does not? Вы очистили кеш приложения/консоли: clear --env = prod?? – nifr

+0

спасибо нифер, когда разворачивается в производство :. on-deploy: - symfony2/assets-install: {env: prod} - symfony2/assetic-dump: {env: prod} - symfony2/cache-clear: {env: prod} –

ответ

0

Я предполагаю, что вы импортировали маршрутизацию FOSUserBundle в routing_dev.yml вместо routing.yml.

# app/config/routing.yml 
fos_user: 
    resource: "@FOSUserBundle/Resources/config/routing/all.xml" 

Очистить кеш производства после любых изменений маршрутизации!

app/console cache:clear --env="prod" 

Вы можете проверить погоду маршрут правильно зарегистрирован в prod среде с:

app/console router:debug --env="prod" 

В противном случае вы не генерировать URL для форм-действия правильно. Это должно быть в шаблоне:

<form action="{{ path("fos_user_security_check") }}"> 
Смежные вопросы