Re: Apache24, Perl 5.010, MySQL 5.6 and Windows 8.1 - no database connection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Jeff:-) As you can see from the the files below I've changed the scriptinpretersource.
Are there any updates of httpd.conf that I shall do? DBIcreatetable.pl doesn't run but printenv.pl does:
DBIcreatetable.pl:
"
#!C:\Dwimperl\perl\bin\perl.exe
use 5.010;
use strict;
use warnings;

use DBI;

print "Content-type: text/plain; charset=iso-8859-1\n\n"; 
say "Perl MySQL Create Table Demo";
 
# MySQL database configurations
my $dsn = "DBI:mysql:clients";
my $username = "root";
my $password = "pw";
 
# connect to MySQL database
my %attr = (PrintError=>0, RaiseError=>1);
 
my $dbh = DBI->connect($dsn,$username,$password, \%attr);
 
# create table statements
my @ddl =     (
 # create tags table
 "CREATE TABLE tags (
 tag_id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
 tag varchar(255) NOT NULL
         ) ENGINE=InnoDB;",
        # create links table
        "CREATE TABLE links (
   link_id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
   title varchar(255) NOT NULL,
   url varchar(255) NOT NULL,
   target varchar(45) NOT NULL
 ) ENGINE=InnoDB;",
 # create link_tags table
 "CREATE TABLE link_tags (
   link_id int(11) NOT NULL,
   tag_id int(11) NOT NULL,
   PRIMARY KEY (link_id,tag_id),
   KEY fk_link_idx (link_id),
   KEY fk_tag_idx (tag_id),
   CONSTRAINT fk_tag FOREIGN KEY (tag_id) 
      REFERENCES tags (tag_id),
   CONSTRAINT fk_link FOREIGN KEY (link_id) 
 REFERENCES links (link_id) 
 ) ENGINE=InnoDB"
        );
 
# execute all create table statements       
for my $sql(@ddl){
  $dbh->do($sql);
}        
 
say "All tables created successfully!";
 
# disconnect from the MySQL database
$dbh->disconnect();
"
printenv.pl:
"
#!C:\Dwimperl\perl\bin\perl.exe
#

# To permit this cgi, replace # on the first line above with the
# appropriate #!/path/to/perl shebang, and on Unix / Linux also
# set this script executable with chmod 755.
#
# ***** !!! WARNING !!! *****
# This script echoes the server environment variables and therefore
# leaks information - so NEVER use it in a live server environment!
# It is provided only for testing purpose.
# Also note that it is subject to cross site scripting attacks on
# MS IE and any other browser which fails to honor RFC2616. 

##
##  printenv -- demo CGI program which just prints its environment
##
use strict;
use warnings;

print "Content-type: text/plain; charset=iso-8859-1\n\n";
foreach my $var (sort(keys(%ENV))) {
    my $val = $ENV{$var};
    $val =~ s|\n|\\n|g;
    $val =~ s|"|\\"|g;
    print "${var}=\"${val}\"\n";
}
"



2015-04-19 18:22 GMT+02:00 Jeff Trawick <trawick@xxxxxxxxx>:
On 04/19/2015 11:01 AM, Dan Östberg wrote:
Everything works (It works!) except for running cgi/pl-files where database connection are involved. A typical Apache server error message is 
"
[Sun Apr 19 15:11:03.324060 2015] [cgi:error] [pid 3312:tid 1032] (9)Bad file descriptor: [client ::1:49681] AH01222: don't know how to spawn child process: C:/Apache24/cgi-bin/DBIcreatetable.pl
"
HELP!

Expect this to be a simple issue of running Perl scripts as CGIs, and nothing to do with database connections.

Please have a look at this documentation and see if it helps: http://httpd.apache.org/docs/2.4/mod/core.html#scriptinterpretersource




[Index of Archives]     [Open SSH Users]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Squid]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]

  Powered by Linux