It was a problem with the ScriptAlias directive in the httpd.conf file. 
Thanks for your help

Quoting Gunnar Hjalmarsson <[EMAIL PROTECTED]>:

> [EMAIL PROTECTED] wrote:
> > I am writing a perl cgi script.
> 
> Are you? I was almost sure that you had just copied some code from a
> 
> very old document on the web.
> 
> > all I get is the script itself in the browser.
> 
> That problem has nothing to do with the script in itself, but it is a
> 
> web server issue.
> 
> > In the options for the directory on my server I have included
> ExecCGI
> > and also the script has read/execute access for anybody
> 
> Sounds right. Did you upload the script in ASCII mode? Does the
> server 
> understand the .cgi file extension, or was it configured to only
> accept 
> a .pl extension?
> 
> If that doesn't help, please follow Chris's advice and use a minimal
> 
> script when trying to make the server work.
> 
> Besides the immediate problem, the code you showed is very old, and I
> 
> have a feeling that you need a re-start as regards CGI scripts
> written 
> in Perl. Take a look at the suggestions at the top of
> http://cgi.resourceindex.com/Documentation/CGI_Tutorials/
> 
> A few comments on the Perl code:
> 
> > #! /usr/bin/perl
> 
> That line is almost okay. It's ususally written without the space, 
> though (I don't know if that makes a difference.)
> 
> #! /usr/bin/perl
> 
> > print "Content-type: text/html\n\n";
> > 
> > &ReadParse;
> 
> It would be wise to replace those lines with:
> 
>      use CGI::Carp 'fatalsToBrowser';
>      use strict;
>      use warnings;
>      use CGI;
> 
>      my $query = new CGI;
>      print $query->header;
> 
>      my %in = $query->Vars;
> 
> > print "<title> The Response</title>";
> > print "Here is the form data:<ul>";
> > 
> > foreach $key (keys %in) {
> 
> Make that
> 
>      foreach my $key (keys %in) {
> ------------^^
> 
> (When using strict, your variables need to be declared, usually with
> my().)
> 
> >     print "<li>$key: $in{$key}";
> > }
> > 
> > print "and here are all the environment variables:<ul>";
> > foreach $key (keys %ENV) {
> 
> ... and that
> 
>      foreach my $key (keys %ENV) {
> ------------^^
> 
> >     print "<li>$key: $ENV{$key}";
> > }
> > print "</ul>";
> 
> If you make those changes, you can drop the whole ReadParse() 
> subroutine. That routine is Perl 4 code, and today we use Perl 5.
> ;-)
> 
> -- 
> Gunnar Hjalmarsson
> Email: http://www.gunnar.cc/cgi-bin/contact.pl
> 
> -- 
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> <http://learn.perl.org/> <http://learn.perl.org/first-response>
> 
> 
> 
> 

-- 
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
<http://learn.perl.org/> <http://learn.perl.org/first-response>


Reply via email to