2010-03-23 3 views
4

ssl_requirement 플러그인을 설정하려고합니다. 내 사용자 컨트롤러 들어, 새 SSL을 요구하고 싶습니다. 사용자/신규를 열면 브라우저가 https로 리디렉션되지만 오류 메시지를 연결할 수 없습니다. 응용 프로그램 오류 로그에 다음과 같이 표시됩니다.SSL 구성

[: ensure_proper_protocol] rendered_or_redirected로 필터 체인이 중지되었습니다.

플러그인을 잘못 구성했거나 nginx 구성에서 오류가 발생했는지 확실하지 않습니다.

답변

1

당신의 form_for 안전한 URL을 사용하십시오 : 당신이 보고해야한다 무엇을 같은 소리

form_for @user, :url => user_path(:secure => true) 
+0

나는 이것이 필요하다는 것을 깨닫지 못했다. 그것을 플러그인 readme에서 본 것을 기억하지 마십시오. – kit

+0

아마도이 문서에서이 말을하지 않고 그 이유를 분명히 밝히지는 못했지만, 그 주된 요지는 다음과 같습니다. ** 오직 **가 https (** ssl_requirement'를 사용하여)를 통해 게시물을 수락하는 페이지를 가지고 있다고 가정하십시오. . http를 통해 해당 양식에 '게시'하면 https를 통해 리디렉션되고 다시 게시됩니다. 그러나 초기 손상은 데이터가 http를 통해 적어도 ** 한 번 ** 보내 졌기 때문에 수행됩니다. 기본적으로 - 이것을 어떻게 사용하고 보석에 전적으로 의존하지 않는지주의하십시오. – jerhinesmith

0

합니다. 요청은 http 요청으로 인식되었으며 https을 통해 수신되도록으로 리디렉션되었습니다.

개발 컴퓨터를 사용 중이라면 https://localhost/rest_of_url으로 리디렉션됩니다. 따라서 포트 443에서 컴퓨터에서 실행중인 서버가없는 경우 오류가 발생합니다.

브라우저가 리디렉션되지 않습니까?

+0

실제로 프로덕션 서버에서이 작업을 수행하려고합니다. 페이지가 사용자/새 사용자를 위해 http에서 https로 리디렉션하지만 브라우저가 연결할 수 없다고 표시합니다. – kit

+0

어떻게 sgin 설치가 corrent 있는지 nginx 포트 443을 테스트 할 수 있습니까? – kit

+0

443 포트를 수신하는 nginx 설정 파일에'server'를 지정해야한다고 생각합니다.이 사이트는 443에서 실행되는 앱을 가진 예제 구성을 가지고 있습니다 : http://articles.slicehost.com/2007/12/19/ubuntu-gutsy-nginx-ssl-and-vhosts – jerhinesmith

0

승객을 통해 nginx를 설치했을 때 ssl 모듈을 설치하지 않은 것처럼 보입니다. 나는 돌아가서 소스에서 nginx를 설치했다.