2011-03-30 1 views
3

, protect_from_forgery과 IE8 문제 다운 버전의 IE8을 사용하고 로그인 페이지에 도달하기 전에 앱에 액세스하자 마자 Windows 인증 프롬프트가 표시됩니다. 그들이 로그인 세부 정보를 입력하려고하면 실패합니다. 나는 인증 실패 메시지가 나타나서는 안되기 때문에 실패 할까봐 걱정하지 않는다.레일 3 나는 모든 모든 브라우저 (등 사파리, 파이어 폭스, IE6, 7, 8) <p></p> 내가 상당히 잠근 새 사용자가 나를 위해 잘 작동하는 레일 애플 리케이션을

ApplicationController에서 protect_from_forgery를 제거하면 시스템에 정상적으로 액세스 할 수 있습니다.

나는 쿠키 등을 허용하는 제안을 시도했지만 여전히 문제가 발생하고 있습니다. 누구든지 우리가 볼 수있는 다른 것들에 대한 제안을 가지고 있습니까

그냥 추가 할 수 있습니다. 사이트는 기본 캠프 스타일 하위 도메인 시스템을 사용합니다. 그것이 문제인지 아닌지는 확실하지 않습니다.

답변

1

어떤 레일 버전을 사용하고 있습니까? 어떤 인증 프레임 워크를 사용하고 있습니까?

레일즈 3.0.3과 일부 이전 버전의 Devise와 동일한 동작이있었습니다. 내가 가진 문제는 어떤 상황에서는 IE8이 긴 형식의 지원되는 형식 대신 HTTP 헤더에 'Accept-Type : */*'을 전송하기로 결정했다는 것입니다. Rails/Devise 내의 어떤 부분이 미끄러지고 HTTP 인증 상태가 되돌려 보냈습니다.

Rails 3.0.5 및 Devise 1.2.rc2로 업그레이드하여 문제를 해결했습니다.

+0

레일즈 3.0.5와 Devise 1.1.9를 실행 중입니다. –

+0

HTTP 요청 헤더에서 인증을 요청하는 요청을 살펴보고 동일한 문제 일 수 있는지 확인하십시오. 요청 헤더를 검사하기 위해 피들러를 사용했습니다. 조언을 주신 덕분에 – HakonB

+0

. IE8을 사용하는 대부분의 사람들에게는 정말 고심하고 있습니다. 그것은 단지이 특별한 클라이언트입니다. –

0

다른 누구에게도 여전히 문제가있는 경우 레일 3.0.9 및 개발자 1.2.1을 사용 중이며이 문제가 계속 발생합니다. 내 문제는 IE에서 밑줄이있는 하위 도메인에 쿠키를 설정하지 않는다는 것입니다. 자세한 내용은 this answer을 참조하십시오. 따라서 하위 도메인을 변경하여 대시를 사용하면 이제 작동합니다.