perl-asp mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Quentin Smith <quent...@comclub.dyndns.org>
Subject Re: Including CGI's
Date Wed, 05 Jun 2002 09:42:28 GMT
Hi-
On Wednesday, June 5, 2002, at 05:31  AM, Ian Cass wrote:

>> What you've got there is prob what I'd do for getting it to run...
>
> It's nice to know I'm not missing something completely obvious.
>
>> although I'd probably add a parameter to the cgi script so it skipped 
>> the
> content-type stuff (thereby stopping you from having to strip it)
>
> True, but I wanted a generic fits-all solution without having to 
> maintain
> modified versions of CGI source.
This isn't a generic fits-all solution. You don't even consider that 
there might be headers other than Content-type. If you want it to work 
for almost any CGI (the only exception I can think of is server "push" 
scripts), you should split it on /\n\n/ and parse the headers returned. 
The headers end with \n\n, BTW.
>
>> Could you make the functions in the cgi script (presuming it is perl) 
>> in
> the global.asa and then just run the funcs?
>
> The CGI's I've got in mind are written in c++.
Would it be hard to port these to XS files? I'm not sure if anyone's 
done XS in C++, but it shouldn't be too hard.
>
> --
> Ian Cass
>
>
>>
>> HTH
>>
>> Ellers
>>
>>
>> 6/5/02 4:36:25 PM, "Ian Cass" <ian.cass@mblox.com> wrote:
>>
>>> Hi,
>>>
>>> Bit of a puzzler here. What would be the correct way of running a CGI 
>>> and
>>> have its output embedded on an Apache::ASP page?
>>>
>>> The site I'm working on has no frames & uses headers and footers to
> provide
>>> formatting. What I want to be able to do is to print my headers, the
> output
>>> from the generic CGI, then print my footer. Obviously, a redirect wont
> work
>>> here & an include will not execute the cgi. I need an 'exec and 
>>> include
>>> output' command.
>>>
>>> I've come up with a horrible .asp wrapper hack for now that works for 
>>> me,
>>> but I'm convinced there must be a 'proper' way of doing this.
>>>
>>> #!/usr/local/bin/perl asp
>>> <%
>>> $Response->Include($Server->MapPath("/gui/header.inc"));
>>> my $me = basename($0);
>>> $me =~ s/\.asp//;
>>> my $content = `env "$ENV{'QUERY_STRING'}" ./$me.cgi`;
>>> $content =~ s/Content-type:.*\n//;
>>> $content =~ s/<html>//;
>>> $content =~ s/<\/html>//;
>>> $content =~ s/<body[^>]*>//;
>>> $content =~ s/<\/body>//;
>>> print $content;
>>> $Response->Include($Server->MapPath("/gui/footer.inc"));
>>> %>
>>>
>>> --
>>> Ian Cass
>>>
>>>
>>>


---------------------------------------------------------------------
To unsubscribe, e-mail: asp-unsubscribe@perl.apache.org
For additional commands, e-mail: asp-help@perl.apache.org


Mime
View raw message