From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id F31E7BC48 for ; Tue, 19 Apr 2005 14:51:54 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j3JCpsUg027898 for ; Tue, 19 Apr 2005 14:51:54 +0200 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id OAA12804 for ; Tue, 19 Apr 2005 14:51:53 +0200 (MET DST) Received: from mail.eecs.harvard.edu (bowser.eecs.harvard.edu [140.247.60.24]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id j3JCpqHK027895 for ; Tue, 19 Apr 2005 14:51:53 +0200 Received: from localhost (localhost.eecs.harvard.edu [127.0.0.1]) by mail.eecs.harvard.edu (Postfix) with ESMTP id 588D654CA88; Tue, 19 Apr 2005 08:51:52 -0400 (EDT) Received: from mail.eecs.harvard.edu ([127.0.0.1]) by localhost (bowser.eecs.harvard.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 21727-02; Tue, 19 Apr 2005 08:51:52 -0400 (EDT) Received: by mail.eecs.harvard.edu (Postfix, from userid 32018) id 2CB7954CA78; Tue, 19 Apr 2005 08:51:52 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mail.eecs.harvard.edu (Postfix) with ESMTP id 2A07D54CA6E; Tue, 19 Apr 2005 08:51:52 -0400 (EDT) Date: Tue, 19 Apr 2005 08:51:52 -0400 (EDT) From: Christopher Alexander Stein To: Christophe TROESTLER Cc: Mike Hamburg , caml-list@inria.fr Subject: Re: [Caml-list] CamlGI question In-Reply-To: <20050419.133304.40952590.debian00@tiscali.be> Message-ID: <20050419084526.Q20372@bowser.eecs.harvard.edu> References: <810e04dc0f6bb601fb828db8d18def6c@fas.harvard.edu> <20050419.133304.40952590.debian00@tiscali.be> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=X-UNKNOWN Content-Transfer-Encoding: QUOTED-PRINTABLE X-Virus-Scanned: by amavisd-new at eecs.harvard.edu X-Miltered: at concorde with ID 4264FEEA.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 4264FEE9.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; caml-list:01 christophe:01 troestler:01 mli:01 submodules:01 indexing:01 lib:01 buffered:01 buffered:01 caml-list:01 beginner's:01 ocaml:01 beginners:01 bug:01 ...:98 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on yquem.inria.fr X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.0.2 X-Spam-Level: Je pense qu'aujourd'hui, une interface fonctionnante de CGI est presque aussi important pour une langue d'usage universel qu'un g=E9n=E9rateur ex=E9cutable de A.OUT ou ELF. Une interface de base de donn=E9es (MySQL) suit de pr=E8s derri=E8re. Lex On Tue, 19 Apr 2005, Christophe TROESTLER wrote: > On Mon, 18 Apr 2005, Mike Hamburg wrote: > > > > Is CamlGI still actively maintained? I'm writing a CGI/FastCGI > > program using it, and have been having some trouble with the library. > > It is -- I just do not have much time to care about it. > > > http://capricorn.dnsalias.org/mike/index/ > > I downloaded your files. For a start, all the modules are -pack'ed > into camlGI.cm[x]a, so you only need to link with that file. Also, > the interface of the library is in camlGI.mli with complete > documentation. In particular, you should not use hidden submodules: > e.g. in "path.ml", say [open CamlGI] and then [Cgi.HttpError] instead > of [Cgi_types.HttpError]. Same in "index.ml": you should say [open > CamlGI.Cgi], not [open Cgi]. > > [Request.metavar rq.rq "SERVER_NAME"] can simply be replaced with > [Request.server_name rq.rq] > > [cgi#header_was_emitted ()]: such method does not exist in the public > interface. > > I do not see why you set [rq=3Drequest] as the request can be gotten > from the cgi object [cgi#request]. > > > When used as a FastCGI, the indexing script hangs, [...] It is quite > > clear that the script has finished by the time the hang occurs > > Do the examples provided with the lib work as they should? > > Are you sure your [main] function actually terminates? Indeed, the > output is buffered (at least by CamlGI) and may not be fully outputted > until the script finishes. Also, if you wish to launch a new > process/thread per request, be sure to use the [fork] optional > parameter to [handle_requests ?fork f conn] -- otherwise [f] will > return immediately and the output "channel" will be closed early. > > CamlGI follows closely the spec -- even the multiplexing part which is > not implemented by many. > > > The plain CGI version works just fine > > CGI output is not buffered. > > > the features of the script only work in the FastCGI version, such as > > thumbnailing. > > Why is that? Do you need persistence for that? > > Hope it helps. If it does not, send me an example (if possible > minimal but definitely self-contained) that exhibits the undesired > behavior and I'll have a look. > > ChriS > > _______________________________________________ > Caml-list mailing list. Subscription management: > http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list > Archives: http://caml.inria.fr > Beginner's list: http://groups.yahoo.com/group/ocaml_beginners > Bug reports: http://caml.inria.fr/bin/caml-bugs >