(베어 나와 함께, 나는이 오두막과 창을 얻는 것을 약속드립니다.)루비 /에 WEBrick, 나는 오두막 인식 창을 필요로 표기에게
나는에 WEBrick 서버의 간단한에 대해이함께 넣어 (#를!) :
require 'webrick'
include WEBrick
s = HTTPServer.new(:Port=>2000, :DocumentRoot=>Dir::pwd)
s.start
더 간단 할 수 없습니다. 이 기본 서버는 HTTP 연결 (firefox, internet exploder, wget, TELENT)을 받아들이고 정적 문서를 가져 오는 한 적절히 처리합니다.
ERROR CGIHandler: c:/rubyCGI/test.cgi:
C:/...[snip]...webrick/httpservlet/cgi_runner.rb:45: in 'exec': Exec format error - ...[snip]...
내가 명령에 몇 가지 일을했습니다 경우, 그러나, 나는가 .cgi 확장자를 가지고있는 디렉토리에있는 파일 중 하나를 설정, I는 서버의 터미널에 500 다시 다음을 얻을 선이 분명
c:\>ruby
exec "c:/rubyCGI/test.cgi"
^Z
(same error erupts)
c:\>ruby
exec "ruby c:/rubyCGI/test.cgi"
^Z
Content-type: text/html
Mares eat oats and does eat oats and I'll be home for Christmas.
cgi_runner.rb
의 라인 (45)에 무슨 일이 일어나고 있는지 모방하기에 WEBrick 창문에 착륙 허가되지 않았습니다. 기업 편집증에 대한 일반적인 두통으로 인해 webrick을 수정할 수 없으므로 C에서 shebang 표기법을 얻을 수 있습니까 : /rubyCGI/test.cgi OS (Windows)에서 인식하므로 명시 적으로 통역사에게 알릴 필요가 없습니다 사용? 모든 .cgi 파일을 루비와 연결되도록 할당 할 수는 있지만 장기적으로는 제한적입니다.업데이트 : 글을 올린 이래로 루비에서 CGI 웹 서버를 돌릴 수 없을 수도 있습니다. 루비는 포크를 지원하지 않습니다. 프로세스를 포크 할 수있는 능력이 없으면 cgi 서버는 각 cgi 스크립트를 한 번에 하나씩 실행해야합니다. 첫 번째 스크립트가 완료되는 동안 모든 동시 요청은 무시됩니다. 이것이 일부에서는 받아 들일지 모르지만 내 응용 프로그램에서는 작동하지 않습니다. 그럼에도 불구하고, 나는 원래의 질문에 대한 답변에 여전히 관심이있을 것입니다.
나를 위해 작동합니다, thnx – peter