Symfony 2.3을 사용하고 프로덕션 서버에 문제가 있습니다.액화 환경에서 Ajax 요청은 액세스가 거부되었습니다 (완전히 인증되지 않은 사용자)
프로덕션 환경에서 모든 AJAX 요청이 실패하는 경우 (항상 어떤 기회인지 이해하지 못함) 발생합니다. prod.log에서 내가 가진 :
security.INFO: Populated SecurityContext with an anonymous Token [] []
[2013-08-08 16:03:28] security.INFO: No expression found; abstaining from voting. [] []
[2013-08-08 16:03:28] security.DEBUG: Access is denied (user is not fully authenticated) by "/var/www/clients/client1/web1/web/vendor/symfony/symfony/src/Symfony/Component/Security/Http/Firewall/AccessListener.php" at line 73; redirecting to authentication entry point
내가 자극 환경 안에 있고 내가 (아약스 오류 후) 페이지를 새로 고침하면 아무 일도 발생하지 않습니다. 아직 로그인되어 있습니다.하지만 아약스는 같은 오류로 실패합니다. app_dev.php로 전환하면 오류가 사라지고 AJAX가 작동합니다. 내가 로그인 리디렉션 302 헤더를 보내 불을 지르고으로 로그인
jms_security_extra:
secure_all_services: false
expressions: true
security:
encoders:
Gdr\UserBundle\Entity\User: sha512
role_hierarchy:
ROLE_ADMIN: ROLE_USER
ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH]
providers:
database:
entity: { class: GdrUserBundle:User, property: email }
firewalls:
secured_area:
pattern: ^/
form_login:
check_path: /login_check
login_path: /login
success_handler: authentication_handler
logout:
path: /logout
target:/
success_handler: authentication_handler
invalidate_session: true
anonymous: ~
access_control:
- { path: /game/*, roles: ROLE_USER }
- { path: /login/choose-character, roles: ROLE_USER }
- { path: /login, roles: IS_AUTHENTICATED_ANONYMOUSLY}
- { path: /logout, roles: ROLE_USER }
- { path: /admin/*, roles: ROLE_ADMIN }
######Config.yml
framework:
session:
cookie_lifetime: 0
save_path: "%kernel.root_dir%/Sessions/"
cookie_httponly: false
# save_path: ~
모든 아약스 요청 :
여기
내 설정 (아약스 노선/* 패턴 게임 아래). URL에 AJAX없이 액세스하려고하면 작동합니다. 302 코드 없음.
아이디어가 있으십니까?
그것은 바보지만, 항상 시작하는 데 유용합니다 : 캐시를 삭제 했습니까? –
예, 선택이 취소되었습니다. – Diego
서버 트래픽을 수신 대기하십시오. 내 생각 엔 session_id 쿠키가 전송되지 않아서 보안 세션을 설정할 수 없다고 생각합니다. 'config.yml'에있는 커스텀'session' 설정을 일시적으로 사용 불가능하게 할 수 있습니까? –