2012-02-24 3 views
3

정확하게 다음과 같은 결과를 얻기 위해 Ruby on Rails 앱의 http://pine.fm/LearnToProgram/?ShowTutorialCode=true : 과 정확히 같은 ruby ​​cgi.rb 스크립트를 실행하려고합니다. http://pine.fm/LearnToProgram/이지만 Rails 웹 앱 안에 있습니다.Ruby on Rails에서 CGI Ruby 스크립트를 실행하는 방법은 무엇입니까?

어떻게 할 수 있습니까?

+0

나는 cgi 대신 랙을 사용할 것입니다 – farnoy

+0

저도 마찬가지지만 기존 요구 사항입니다. – Darme

+0

CGI 스크립트 [조용한 보안되지 않은 것으로 간주되어 사용하기에 적합하지 않음] (http://www.w3.org/Security/faq/wwwsf4.html) –

답변

0

나는 잘 모르겠지만, 이런 일이 적절한 솔루션 (안 테스트)이어야한다 :

match '/that.cgi' => proc { |app| Rack::Handler::CGI.run app } 

으로 레일은 그것이 라우터에서 응용 프로그램의 설치 지원, 랙을 사용합니다. 나는 Rack::Handler::CGI의 사용법에 대해서는 잘 모르지만, 문서화가 잘되어 있지 않습니다.

+0

죄송합니다. 작동하지 않습니다. 그것은 cgi.rb 파일을 실행하는 대신 다운로드하도록했다. 어쩌면 공용 디렉토리가 아닌 bin 디렉토리에 넣어야하지만, 그러면 랙에 파일이 어디에 있는지 알 수있는 방법을 알려주시겠습니까? – Darme

+0

죄송합니다. cgi를 레일과 함께 사용하는 사례는 솔직히 모릅니다. 'Rack :: Handler :: CGI'에 대한 문서는 없으며 (메서드 만 가능) 라우팅에 관한 레일 가이드가 있습니다. 이것은'lambda {| env | [200, "Content-Type : text", "test"]}', 단지 이것; ( – farnoy

+0

어쨌든 고맙습니다! – Darme

관련 문제