Får fejl med apache, men apache siger syntax ok
Jeg bruger en mysql database til at loade min vhosts...Scriptet ser sådan ud her...
<Perl>
use DBI;
my ($sth, $dbh, $domain, $domainID, $createdTS, $created, $sql);
$dbh = DBI->connect("DBI:mysql:tokengroupdk:xxx","xxxx","xxxx");
$sth = $dbh->prepare("SELECT * FROM domain");
$sth->execute();
while (($domainID, $domain, $created) = $sth->fetchrow())
{
if($created == 0)
{
system("/bin/mkdir /home/$domain");
system("/bin/mkdir /home/$domain/www");
system("/bin/mkdir /home/$domain/ErrorLog");
system("/bin/chown apache:apache -R /home/$domain");
$sql = $dbh->prepare("UPDATE domain SET created = 1 WHERE domainID = $domainID");
$sql->execute();
}
push @{$VirtualHost{"*:80"}}, {
ServerName => $domain,
ServerAlias => "www.$domain",
DocumentRoot => "/home/$domain/www",
ErrorLog => "/home/$domain/ErrorLog",
};
}
</Perl>
Og hvis created er 0 opretter den også fint mapperne og det hele..
Når jeg kører "apachectl graceful"
giver den mig dette:
apachectl: Configuration syntax error, will not run "graceful":
Syntax OK
Og hvis jeg kører "apachectl configtest" giver den mig Syntax OK
Hvad kan det være... Hvis jeg fjerne mit perl script, er der ingen fejl... Så fejlen på ligge i det ovenstående script...
