2009-12-22 4 views
3

외부 웹 서버가 Adobe Flash CS4 용 외부 라이브러리와 통신 할 수 있도록 jsfl 외부 라이브러리에 작은 웹 서버를 임베드해야합니다. 외부 라이브러리는 Mac에서는 Carbon 묶음, Windows에서는 dll 집합이므로 Web 서버는 Ruby와 같은 외부 종속성이없는 C/C++ 코드에서 포함 /로드되어야합니다. fnord 또는 mini-httpd와 같은 대부분의 소형 웹 서버는 Mac이나 Windows로 이식 된 적이 없지만 주로 Linux에서 컴파일되도록 고안되었습니다. 나는 Lua 기반 임베디드 웹 서버를 사용할 생각 이었지만 작동하는지 여부는 확실하지 않았습니다. Windows 및 Mac으로 이식하기 쉬운 다른 웹 서버가 있습니까?웹 서버를 탄소 번들에 포함하십시오.

답변

4

좋아, 결국 대답했습니다. 여러 웹 서버를 평가 한 결과 보석을 발견했습니다. Mongoose. Mongoose는 리눅스, Mac 및 Windows에서 쉽게 컴파일되고 실행되는 C로 작성된 매우 작은 임베디드 웹 서버입니다 (위키에 링크가 있어도 iPhone에서 실행할 수 있습니다). 많은 웹 서버가이 작업을 수행한다고 말하지만 몽구스는 실제로 쉽게 작동 할 수있었습니다. 그냥 작은 웹 서버가 최소한의 불만으로 할 것이라고 기대했던 것과 정확히 일치합니다. libevent 나 libev를 사용하는 나의 이전 접근 방식은 약간의 어려움을 겪었는데, 그 이유는 주로 주요 GUI 스레드에 직면 한 스레드 문제 때문이었습니다. Mongoose는 CGI와 PHP에 대한 지원을 제공했지만 실제로 C 기반 처리기를 작성하기가 매우 쉽다는 것을 알았습니다.

+1

Mongoose를 사용하여 몇 달 후, 나는 여전히 그것을, 훌륭한 웹 서버를 사랑 해요. –

0

Webrick과 Mongrel이 둘 다 실행됩니다.

+0

Ruby와 같은 외부 의존성이없는 웹 서버가 정말 필요합니다. 그래서 루아 (Lua) 기반의 웹 서버가 최선의 방법이라고 생각합니다. –

+0

루아는 의존성이 있습니다. –

+0

True NSD이지만 Ruby 나 Python보다 훨씬 작습니다. –

0

나는 liboevent로 구축 된 웹 서버를 사용하여 Lua보다 쉬운 다른 아이디어를 생각했다.

http://3.rdrail.net/blog/libevent-webserver-in-40-lines-of-c/

는 내가 다시보고 : 정말해야 할 일은 하나 개의 파일을 제공하고 다음과 같은 무언가가 작동 할 수 있도록 내가 다른 HTTP 기능이 필요하지 않습니다이다.