Paypal IPN 503 오류 Heroku (bamboo-mri-1.9.2)에 배포 된 Rails 3.0.10 응용 프로그램에서 Paypal IPN 알림을 통합하려고합니다. Rails 애플리케이션에 IPN을 통합 한 것은 이번이 처음이 아니지만, 나는이 순간 미쳐 버렸습니다.Rails 3.0.10 및 Heroku (해결 된)
제가 설정/routes.rb에서 IPN위한 특별한 경로를 정의:
match "/paypal_ipn" => "registrations#paypal_ipn", :as => :paypal_ipn
내가 RegistrationController에서 해당 동작을은 :
class RegistrationsController < ApplicationController
include ActiveMerchant::Billing::Integrations
...
def paypal_ipn
// Notification management stuff...
end
end
문제는 내가 '이다 서버가 항상 503 오류로 IPN 시뮬레이터에 응답하기 때문에 응용 프로그램이 Heroku에 배포되면이 URL에 IPN 알림을 보낼 수 없습니다. 궁금한 점은 CURL이나 다른 브라우저를 사용하여 POST 또는 GET 요청을이 URL에 성공적으로 보낼 수 있다는 것입니다.
paypal_ipn
메서드의 내용을 raise "It exploded!"
으로 바꾸어도 로그에 예외를 발생시키지 않고 동일한 결과를 보았던 모든 이전 필터를 건너 뜁니다. 페이팔 IPN 알림 메시지는 간단한 다른 특히 무엇이든이있는 경우
2012-05-20T17:32:47+00:00 heroku[router]: Error H13 (Connection closed without response) -
> POST reddeportiva-sta.heroku.com/paypal_ipn dyno=web.1 queue= wait= service= status=503
bytes=2012-05-20T17:32:47+00:00 app[web.1]: !! Unexpected error while processing request:
undefined method `include?' for nil:NilClass
2012-05-20T17:32:47+00:00 heroku[nginx]: 173.0.82.126 - - [20/May/2012:17:32:47 +0000]
"POST /paypal_ipn HTTP/1.0" 503 607 "-" "-" reddeportiva-sta.heroku.com
¿ 누구가 알고 ... Heroku가 로그에
모든 내가 볼 수는 이것이다, 그러나 그것은 내게 많은 도움이되지 않습니다 이 nighmare를 일으킬 수있는 CURL POST 요청?
덕분에 사전에 어떤 아이디어가
편집 글쎄, 내가 문제의 원인을 발견했습니다 .. 환영합니다,하지만, 난 여전히 해결책을 조사하고 있습니다.
사용자가 웹 페이지의 iframe에 로그인하고 세션을 유지 관리 할 수 있도록 rack-iframe (http://rubygems.org/gems/rack-iframe)을 사용하고 있습니다.
랙 - iframe 크래시를 만드는 Paypal IPN 메시지에 뭔가가있는 것 같습니다. 더 자세히 조사하고 내 발견을 공유 할 것입니다. 정말 이상한 버그했다
...
편집 나는이 문제에 대한 약간의 수정으로 끌어 오기 요청을 보낸 2 창조자 - iframe이있는 선반, 그래서 나는이 문제가 해결된다 생각 : -) https://github.com/merchii/rack-iframe/pull/1
이의 loggin에 레벨이 DEBUG 이미 있지만, 다른 아무것도 로그에 표시되지 않습니다 오류는 매우 이상합니다. 요청이 레일즈 애플리케이션에 도달하지 못하는 것 같습니다. 다른 예외는 로그에 많은 내용을 기록하고 전자 메일 보고서를 보내는 exception_notification gem을 트리거합니다. –
답장을 보내 주셔서 다시 생각하게하고 마침내 문제를 찾을 수있었습니다 :-) –