version 1.9, 2003/04/09 00:52:37
|
version 1.13, 2006/09/15 20:49:27
|
Line 38 $VERSION = sprintf("%d.%02d", q$Revision
|
Line 38 $VERSION = sprintf("%d.%02d", q$Revision
|
|
|
use strict; |
use strict; |
|
|
my $confdir='/etc/httpd/conf/'; |
my @confdirs=('/etc/httpd/conf/','/etc/apache2/'); |
|
|
# ------------------- Subroutine read_conf: read LON-CAPA server configuration. |
# ------------------- Subroutine read_conf: read LON-CAPA server configuration. |
# This subroutine reads PerlSetVar values out of specified web server |
# This subroutine reads PerlSetVar values out of specified web server |
# configuration files. |
# configuration files. |
sub read_conf |
sub read_conf { |
{ |
|
my (@conf_files)=@_; |
my (@conf_files)=@_; |
my %perlvar; |
my (%perlvar,%configdirs); |
foreach my $filename (@conf_files,'loncapa_apache.conf') |
foreach my $filename (@conf_files,'loncapa_apache.conf') { |
{ |
my $configdir = ''; |
open(CONFIG,'<'.$confdir.$filename) or |
$configdirs{$filename} = [@confdirs]; |
die("Can't read $confdir$filename"); |
while ($configdir eq '' && @{$configdirs{$filename}} > 0) { |
while (my $configline=<CONFIG>) |
my $testdir = shift(@{$configdirs{$filename}}); |
{ |
if (-e $testdir.$filename) { |
if ($configline =~ /^[^\#]*PerlSetVar/) |
$configdir = $testdir; |
{ |
} |
|
} |
|
if ($configdir eq '') { |
|
die("Couldn't find a directory containing $filename"); |
|
} |
|
open(CONFIG,'<'.$configdir.$filename) or |
|
die("Can't read $configdir$filename"); |
|
while (my $configline=<CONFIG>) { |
|
if ($configline =~ /^[^\#]*PerlSetVar/) { |
my ($unused,$varname,$varvalue)=split(/\s+/,$configline); |
my ($unused,$varname,$varvalue)=split(/\s+/,$configline); |
chomp($varvalue); |
chomp($varvalue); |
$perlvar{$varname}=$varvalue; |
$perlvar{$varname}=$varvalue; |
} |
} |
} |
} |
close(CONFIG); |
close(CONFIG); |
} |
} |
my $perlvarref=\%perlvar; |
my $perlvarref=\%perlvar; |
return ($perlvarref); |
return ($perlvarref); |
} |
} |
|
|
#---------------------- Subroutine read_hosts: Read a LON-CAPA hosts.tab |
#---------------------- Subroutine read_hosts: Read a LON-CAPA hosts.tab |
# formatted configuration file. |
# formatted configuration file. |
Line 79 sub read_hosts {
|
Line 86 sub read_hosts {
|
|
|
open(CONFIG,'<'.$Filename) or die("Can't read $Filename"); |
open(CONFIG,'<'.$Filename) or die("Can't read $Filename"); |
while (my $line = <CONFIG>) { |
while (my $line = <CONFIG>) { |
my @items = split(/:/, $line); |
if (!($line =~ /^\s*\#/)) { |
if (scalar @items == $RequiredCount) { # Have only all required items: |
my @items = split(/:/, $line); |
$items[$RequiredCount] = $DefaultMaxCon; |
if(scalar @items >= $RequiredCount) { |
} |
if (scalar @items == $RequiredCount) { # Only required items: |
if(scalar @items == $RequiredCount + 1) { # Have up through maxcon. |
$items[$RequiredCount] = $DefaultMaxCon; |
$items[$RequiredCount+1] = $DefaultIdle; |
} |
} |
if(scalar @items == $RequiredCount + 1) { # up through maxcon. |
if(scalar @items == $RequiredCount + 2) { # Have up through idle. |
$items[$RequiredCount+1] = $DefaultIdle; |
$items[$RequiredCount+2] = $DefaultMinCon; |
} |
} |
if(scalar @items == $RequiredCount + 2) { # up through idle. |
{ |
$items[$RequiredCount+2] = $DefaultMinCon; |
my @list = @items; # probably not needed but I'm unsure of |
} |
# about the scope of item so... |
{ |
$HostsTab{@list[0]} = \@list; |
my @list = @items; # probably not needed but I'm unsure of |
|
# about the scope of item so... |
|
$HostsTab{$list[0]} = \@list; |
|
} |
|
} |
} |
} |
} |
} |
close(CONFIG); |
close(CONFIG); |