From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id DA94CBC58 for ; Fri, 17 Sep 2010 01:55:35 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Aq4BAPdKkkyGnQCBd2dsb2JhbACBRYFWkRSNZBUBDAsICQ4GH7QBkjqETXQE X-IronPort-AV: E=Sophos;i="4.56,378,1280700000"; d="scan'208,217";a="57397622" Received: from shiva.jussieu.fr ([134.157.0.129]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/DHE-RSA-AES256-SHA; 17 Sep 2010 01:55:35 +0200 Received: from hydrogene.pps.jussieu.fr (hydrogene.pps.jussieu.fr [134.157.168.1]) by shiva.jussieu.fr (8.14.4/jtpda-5.4) with ESMTP id o8GNtWRs055829 ; Fri, 17 Sep 2010 01:55:32 +0200 (CEST) X-Ids:164 Received: from duodiscus.localnet (hydrogene.pps.jussieu.fr [134.157.168.1]) by hydrogene.pps.jussieu.fr (8.13.4/jtpda-5.4) with ESMTP id o8GNtVTS031699 ; Fri, 17 Sep 2010 01:55:31 +0200 From: Vincent Balat To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] web server interface for Ocaml ( like rack, wsgi, ...)? Date: Fri, 17 Sep 2010 01:55:45 +0200 User-Agent: KMail/1.13.5 (Linux/2.6.32-5-amd64; KDE/4.5.1; x86_64; ; ) Cc: Michael Ekstrand References: <21686.68875.qm@web111507.mail.gq1.yahoo.com> <1284676023.9376.31.camel@knine> In-Reply-To: <1284676023.9376.31.camel@knine> Organization: PPS =?utf-8?q?Universit=C3=A9_Paris?= Diderot X-KMail-Markup: true MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="Boundary-01=_B6qkM2v5ZDgq4q3" Content-Transfer-Encoding: 7bit Message-Id: <201009170155.45919.vincent.balat@pps.jussieu.fr> X-Miltered: at jchkmail.jussieu.fr with ID 4C92AE74.000 by Joe's j-chkmail (http : // j-chkmail dot ensmp dot fr)! X-j-chkmail-Enveloppe: 4C92AE74.000/134.157.168.1/hydrogene.pps.jussieu.fr/hydrogene.pps.jussieu.fr/ X-Spam: no; 0.00; ocaml:01 ocamlnet:01 ocamlnet:01 white-space:98 config:01 config:01 pps:01 caml-list:01 functions:01 functions:01 cleanly:01 cleanly:01 jussieu:01 writes:01 writes:01 X-Attachments: cset="utf-8" cset="utf-8" --Boundary-01=_B6qkM2v5ZDgq4q3 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit > Running Eliom over OCamlNet lets it integrate a bit more closely with a > third-party web server via FastCGI. Standard functions such as absolute > URL construction and SSL checking that depend on the host, port, and > connection type have a knack for breaking when run behind a reverse > proxy. That is not really true for Eliom, as the programmer never writes the URLs himself and Eliom does this cleanly with the right information (actually all URLs are relative, except for switching from http to https or redirections. And in that case the host and port are taken from the config file). About Eliom, Ocsigen server and fastCGI: - Writing a version of Eliom working with fastCGI is theoretically possible, even if it is probably a huge work. I recommand to wait for version 2 of Eliom (in a few months) as there are many new features. But once again I'm not convinced at all that it is interesting. - Writing a fastCGI extension for Ocsigen server should be quite easy to do for someone used to LWT programming. Extending Ocsigen server is very simple. That is not in our plans for the next months, as we are currently concentrating a lot on Eliom 2. A contribution would be welcome. We can also probably take in charge the development if someone wants to pay for it. Vincent --Boundary-01=_B6qkM2v5ZDgq4q3 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: 7bit

> Running Eliom over OCamlNet lets it integrate a bit more closely with a

> third-party web server via FastCGI. Standard functions such as absolute

> URL construction and SSL checking that depend on the host, port, and

> connection type have a knack for breaking when run behind a reverse

> proxy.

That is not really true for Eliom, as the programmer never writes the URLs himself and Eliom does this cleanly with the right information (actually all URLs are relative, except for switching from http to https or redirections. And in that case the host and port are taken from the config file).

About Eliom, Ocsigen server and fastCGI:

- Writing a version of Eliom working with fastCGI is theoretically possible, even if it is probably a huge work. I recommand to wait for version 2 of Eliom (in a few months) as there are many new features. But once again I'm not convinced at all that it is interesting.

- Writing a fastCGI extension for Ocsigen server should be quite easy to do for someone used to LWT programming. Extending Ocsigen server is very simple. That is not in our plans for the next months, as we are currently concentrating a lot on Eliom 2. A contribution would be welcome. We can also probably take in charge the development if someone wants to pay for it.

Vincent

--Boundary-01=_B6qkM2v5ZDgq4q3--